使用iOS-5 UITableView允许多个选择,是否有任何快速的方法可以选择(并突出显示)所有行的良好性能?我在谈论fetchedResultsController的数千行数据。
我尝试过使用selectRowAtIndexPath:动画循环,对于庞大的数据集来说,这似乎不是一个好主意。
另外我发现如果使用tableview reloadData取消选择所有行的性能比deselectRowAtIndexPath:animated:在循环内更好。这是清除选择的安全方法吗?
由于
答案 0 :(得分:1)
据我所知,您没有其他选择行的可能性,只有selectRowAtIndexPath:
。
我认为,你不应该在表格视图中有这么多行,尝试优化它。你真的需要这么多行吗?
答案 1 :(得分:0)
我遇到了同样的问题,我已经创建了几个单元格。我必须全部选择它们。 但是你无法到达未创建的单元格。所以我无法使用getTableViewCellForRowAtIndex:function。
我有一个选定实体的解决方案,我将整个集合设置为selectedcollection。 但我的问题出在UI上,我不得不向用户展示。
所以我决定创建一个checkedXXXTableViewCell,并从XXXTableViewCell继承这个类。 (他们完全使用相同的业务) 我在checkedXXXTableViewCell中选中了检查按钮(这是我的自定义checkButton)。
最后我需要更改我的cellForRowAtIndexPath:函数,如下所示。 它工作正常。 希望它能帮到你。 :)
-(UITableViewCell *)getCell:(Entity *)entity cellForRowAtIndexPath:(NSIndexPath *)indexPath identifier:(NSString *)cellIdentifier {
if (allSelected == 1) {
return [[CheckedxxxCell alloc] initWithEntity:entity index:indexPath.row reuseIdentifier:cellIdentifier];
}
else {
return [[xCell alloc] initWithEntity:entity index:indexPath.row reuseIdentifier:cellIdentifier];
}
}