如何解决如何检测UItableview中显示了哪些行
| 我想在UITableView
中更新accessoryViews
,但是仅在用户可以看到的行上。
如何检测屏幕上实际存在哪些行?
解决方法
使用UITableview实例方法
-visibleCells
visibleCells
返回的表单元格为
在接收器中可见。
- (NSArray *)visibleCells
返回值
包含UITableViewCell
的数组
对象,每个对象代表一个可见的
接收表视图中的单元格。
可用性
在iOS 2.0及更高版本中可用。
, UITableView为此具有-visibleCells
方法-它返回当前可见单元的NSArray
, 在您不希望添加附件的行上实施此操作。
-(NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSUInteger row = [indexPath row];
if (row == 0||row == 2)
return nil;
return indexPath;
}
, 不要认为您真的不需要检测可见行来更新AccessoriesViews。您可以只在tableView:cellForRowAtIndexPath:
数据源方法中实现它。
但是,如果要获取可见行,则可以使用
- (NSArray *)visibleCells
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。