【发布时间】:2010-10-20 11:47:09
【问题描述】:
我在这里按照 Luke Redpath 的建议 - Selected UItableViewCell staying blue when selected - 在返回原始表格视图时取消选择该行,但我无法让它工作。事实上,该方法并没有被触发。
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
[self.tableView deselectRowAtIndexPath:[self.tableView indexPathForSelectedRow] animated:YES];
}
我怀疑这是因为该类不是UITableViewController,而是UIViewController,其中tableView 作为连接到NIB 的属性。
如何获得相同的行为 - 即返回时取消选择?
【问题讨论】:
-
只要 tableView 正确连接就没有关系。你应该可以把它放在
didSelectRowAtIndexPath:中并让它工作。您可能还想对[self.tableView indexPathForSelectedRow]返回的内容进行快速 NSLog 检查,因为它实际上可能返回 nil。 -
我使用了这个,但遇到了一个问题,即单元格中的更改(背景等)没有立即反映。在 didDeselectRowAtIndexPath: 中添加 reloadRowsAtIndexPaths: 成功了
标签: iphone objective-c uitableview ios