我认为这是一种非常常见的情况,但我无法找到其他人如何解决问题。
我有一个UITableView,当用户点击一个单元格时,我在堆栈上推送一个新的视图控制器(使用UINavigationController)。当用户点击导航栏上的“返回”时,单元格仍然处于选定状态(即蓝色背景)。
我希望背景在用户点按单元格时最初为蓝色,但在再次显示页面时要关闭。
答案 0 :(得分:3)
你可以在推动新的viewcontroller之前或之后取消选择单元格。
- (void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
[aTableView deselectRowAtIndexPath:indexPath animated:YES];
// create and push new viewController
}
答案 1 :(得分:0)
有两种方法可以做同样的事情:
重新载入视图中的整个表格将显示
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[YourTableView reloadData];
}
或者
-(void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
[YourTableView deselectRowAtIndexPath:indexPath animated:YES];
}
考虑性能明智第二个是最佳解决方案使用。