deselectRowAtIndexPath我有文本的几行被选择时,其改变颜色的小区/突出显示。问题在于,当新的viewController被推入时,取消选择动画发生,这在视觉上分散注意力,因为文本突然回复到未选定状态。我已将deselectRowAtIndexPath语句移动到新视图控制器所在的行后面,但这不起作用。问题与的tableView
如何防止用户看到电池取消选择(不执行定时器)?任何帮助,将不胜感激请。
deselectRowAtIndexPath我有文本的几行被选择时,其改变颜色的小区/突出显示。问题在于,当新的viewController被推入时,取消选择动画发生,这在视觉上分散注意力,因为文本突然回复到未选定状态。我已将deselectRowAtIndexPath语句移动到新视图控制器所在的行后面,但这不起作用。问题与的tableView
如何防止用户看到电池取消选择(不执行定时器)?任何帮助,将不胜感激请。
我想用表视图和推新的VC所使用的一般模式是,取消选择在viewWillAppear:animated
方法表行。然后当VC弹出时,他们会看到哪一行已被用于导航到该VC。
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.myTableView deselectRowAtIndexPath:[myTableView indexPathForSelectedRow] animated:YES];
}
so so remove yourselectRow from your didSelectRowAtIndexPath
method。
如果您使用的是UITableViewController
,你会不会需要调用deselectRowAtIndexPath:
。当您的表格视图再次可见时,这将自动完成。
如果您没有使用UITableViewController
,因为您有更复杂的界面,您需要从viewWillAppear:animated:
方法手动拨打deselectRowAtIndexPath:
。
谢谢,这是有道理的。但是,我的viewWillAppear方法不是解雇? – RunLoop 2009-12-10 17:55:25
更新:viewWillAppear没有发射,因为我正在使用导航控制器,所以我实现了 - (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated – RunLoop 2009-12-10 18:07:34