ios - 如何从 UITableView 获取所有加载的单元格?

标签 ios objective-c uitableview

我有一个 UITableView,单元格中有需要观察者的对象。当我导航到另一个 View 时,需要删除这些观察者。调用 [tableView visibleCells] 会得到所有当前加载的单元格吗?

我的单元格高度为 3-400 像素,这导致每次只能重复使用 3-4 个不同的单元格。在任何时间点,两个单元格可能是可见的,或者三个单元格可能是可见的。当我调用 visibleCells 时,我会收到屏幕上实际可见的单元格,还是会收到所有通过 cellForRowAtIndexPath 的单元格尚未出列以供重用

文档简单地说明了返回在接收器中可见的表格单元格。 ... 返回值:一个包含 UITableViewCell 对象的数组,每个对象代表接收表格 View 中的一个可见单元格.

它们的意思是可见实际上当前显示在屏幕上吗?还是可见,因为它对 tableView 可见,但不一定对用户可见(即未在屏幕上显示)?

最佳答案

假设 visibleCells 使用 indexPathsForVisibleRows 那么它意味着可见(如在屏幕上!)如果它不可见,那仍然是它的意思顺便说一句:D

恐怕没有公共(public)方法来获取所有加载的单元格。什么是 hackisch 但有效(!)是枚举 tableView 的 subview ;)

关于ios - 如何从 UITableView 获取所有加载的单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25509592/

相关文章:

objective-c - NSFileManager - 创建一个只读文件

ios - iPhone 6 plus 的屏幕尺寸问题

ios - ViewController 在 didSelectRowAtIndexPath 中缓慢呈现

iphone - 如何使用多线程在 UITableView 中显示 json 图像数组?

ios - 该团队已经达到了 iPhone 设备的最大数量

iphone - UITableView with pop 无法查看数据问题

ios - Xcode:dyld:未加载库:AVKit-未找到图片

ios - 构建回合制多人游戏服务器

iOS7 - 搜索结果表格 View 向下推 20 像素

ios - 显示 Entypo 字体中的 5 位基本 Unicode 字符