我正在开发一个项目,它有一个控制器Controller
,它包含所有逻辑(即UITableViewDelegate
)。我有一个视图View1
,它是一个包含UIView
作为属性的子类UITableView
。
我的问题是,当发生某些事情时,我想更新第一行(某种类型的标题行)。我以为我可以做这个电话:
UITableViewCell* headCell =
(UITableViewCell*) [view1.tableView
cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];
但这似乎不起作用。我headCell
(null)
为NSLog(@"%@", [headCell description]);
我的控制器调用[view1.tableView setDelegate:self]
,所以我也试图调用[self cellForRow..]
,但我只是无法识别的选择器。 NSIndexPath
应该是正确的,对吧?
我已经尝试过阅读,但是每个人似乎都让cellForRowAtIndexPath工作,但我不能。有人有任何想法吗?
编辑:我做了一个解决方法,所以如果没有测试它们就不能真正接受任何答案。谢谢。解决方法是创建一个在cellForRowAtIndexPath:
- 方法中引用的单元格,并在其他位置手动调整它。我知道这不是最佳做法,但我现在没有时间做其他事情。感谢您的贡献,我会稍后检查以测试它们并接受我的答案,如果我可以让它工作:)
答案 0 :(得分:2)
答案 1 :(得分:1)
cellForRowAtIndexPath
方法返回单元格,如果该单元格当前可见,则返回nil