ios – UITableview配件类型在滚动时消失

ios – UITableview配件类型在滚动时消失,第1张

概述我做了一个tableView,我需要选择多个选项.选项被选中,但是当我滚动表格视图时,复选标记选项消失,其他一些行显示该复选标记. 这是我在didselectedrowAtindex方法中的代码table_option是UITableView,selectedcells是NSMutableArray [table_option deselectRowAtIndexPath:indexPath an 我做了一个tableVIEw,我需要选择多个选项.选项被选中,但是当我滚动表格视图时,复选标记选项消失,其他一些行显示该复选标记.
这是我在dIDselectedrowAtindex方法中的代码table_option是UItableVIEw,selectedcells是NSMutableArray

[table_option deselectRowAtIndexPath:indexPath animated:YES];NSNumber *rowNsNum = [NSNumber numberWithUnsignedInt:indexPath.row];if ( [selectedCells containsObject:rowNsNum]  ){    if (cell.accessoryType == UItableVIEwCellAccessorycheckmark)         cell.accessoryType = UItableVIEwCellAccessoryNone;    else         cell.accessoryType = UItableVIEwCellAccessorycheckmark;    [selectedCells removeObject:rowNsNum];    sel.text=@"Select";   // cell.accessoryType = UItableVIEwCellAccessoryNone;}    else {    if (cell.accessoryType == UItableVIEwCellAccessorycheckmark)         cell.accessoryType = UItableVIEwCellAccessoryNone;    else         cell.accessoryType = UItableVIEwCellAccessorycheckmark;    [selectedCells addobject:rowNsNum];   sel.text=@"Selected";   // cell.accessoryType = UItableVIEwCellAccessorycheckmark;}[table_option reloadData];

请尽快帮忙

解决方法 您需要在cellForRowAtIndexPath方法中检查是否已选择单元格.出现此问题的原因是tableVIEw重新使用单元格.
请在您的cellForRowAtIndexPath方法中编写以下代码,它将解决问题.

NSNumber *rowNsNum = [NSNumber numberWithUnsignedInt:indexPath.row];if ( [selectedCells containsObject:rowNsNum]  ){    cell.accessoryType = UItableVIEwCellAccessorycheckmark;}else{    cell.accessoryType = UItableVIEwCellAccessoryNone;}
总结

以上是内存溢出为你收集整理的ios – UITableview配件类型在滚动时消失全部内容,希望文章能够帮你解决ios – UITableview配件类型在滚动时消失所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1048996.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存