我的iPhone应用程序有一个标签栏控制器,其中一个标签是导航控制器。当用户双击选项卡时,它会导致导航控制器弹回到根视图。
我的问题是导航层次结构中的某些视图在与该视图关联的navigationItem中有一个特定的条形按钮。所以我是根据推送到navigationController的视图以编程方式设置rightBarButtonItem。当双击发生时,它会弹回到根视图,但不会弹回到右键。该按钮似乎与弹出的具有自己特定按钮的最后一个视图保持一致。
所以我的根视图与不同视图的条形按钮不匹配。
有没有办法检测双击动作何时发生?在这种情况下,我可以将导航栏上的按钮重置为正确的按钮。我尝试在viewWillAppear / viewDidAppear / viewDidLoad方法中执行此操作,但是当标签栏双击时,似乎没有调用这些方法。
答案 0 :(得分:1)
确保您始终拥有独立于视图可见方式的正确按钮(例如,通过弹出子视图控制器,或通过双击标签栏)的最安全方法是每次设置按钮视图变得可见。因此,在根视图控制器中:
-(void)viewWillAppear {
//check button, change if desired
}