【发布时间】:2012-02-13 16:33:37
【问题描述】:
抱歉,我是 iOS 开发新手。
我有一个UITableView 设置来自从单个 XiB 笔尖拉出的单元格。我在笔尖中创建了一个开/关开关,我试图将开关的状态保存在viewWillDisappear 上,以获取我拥有的单元格数量。 (准确地说是 6 个单元格)。
如何遍历所有单元格并保存这些信息?
我在我的 UIViewController 中尝试了这个来获取一个单元格的信息:
- (void)viewDidDisappear:(BOOL)animated
{
[super viewDidDisappear:animated];
UITableView *tv = (UITableView *)self.view;
UITableViewCell *tvc = [tv cellForRowAtIndexPath:0];
}
它给了我错误“程序接收信号:“EXC_BAD_INSTRUCTION”。
我怎样才能做到这一点?
【问题讨论】:
-
为什么要声明
tv?你不能用self.tableView吗? -
您不应将开关状态存储在单元格中。使用 NSArray 进行数据模型存储
-
我同意 NeverBe - 不要按照您描述的方式进行操作(可能的例外是您有一张小桌子,并且已将单元格定义为不可重复使用)。使用 tableviews 的推荐方法是在单独的 model 中维护状态。 当用户进行更改时,您可以使用更改更新该模型,方法是将处理程序添加到每个字段的
editDidEnd或类似方法。然后当“完成”时,您正在检查您的自定义模型数据 - 不需要显示的字段。
标签: ios uitableview viewwillappear