我有一个 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/