【发布时间】:2011-08-04 10:00:46
【问题描述】:
iPad:遍历 UITableView 中的每个单元格?
【问题讨论】:
-
毫无意义的问题,真的:细胞被汇集和重用。一般来说,如果你没有在屏幕上看到它,它就不存在。请详细说明您要做什么。
-
+1 评论,为什么需要遍历单元格?通常你会迭代你填充单元格的底层数据结构。如果您出于某种原因需要访问单元格,那么在
cellForRowAtIndexPath:中,您可以设置基础数据结构的cell属性以指向已初始化的单元格。但请确保它是@property (assign),而不是retain,因为您不想为了重用而将所有单元格保留在内存中。 -
这不是真的没有意义; UITableView 作为一些支持数据存储的可视化表示存在。无论数据的特定子集当前是否在屏幕上,数据存储都存在。因此,迭代单元格类似于查询商店中的内容,一次一行。
-
毫无意义。如果您正在查询 gui 表,那么您的架构是错误的。您永远不需要在 GUI 上清理表,因为所有数据都存在于数据存储中。该表是 MVC,单元格中包含的所有数据都在基于该模式的数据存储中。这是一个不了解 MVC 工作原理的问题。
-
我同意尼克·特纳的观点。不要尝试您所描述的内容(可能的例外是您有一个小表格,并且已将单元格定义为不可重用)。使用 tableviews 的推荐方法是在单独的 model 中维护状态。 当用户进行更改时,您可以使用更改更新该模型,方法是将处理程序添加到每个字段的
editDidEnd或类似方法。然后当“完成”时,您正在检查您的自定义模型数据 - 不需要显示的字段。
标签: ipad uitableview