我有一个带有几个视图的navigationcontrol。一切正常。在子视图中调用方法[self.navigationController popViewControllerAnimated:YES];
之后,我现在想在父视图中显示一个警报。我将警报配置为显示在父视图控制器viewDidLoad
上。但我承认的是,这只在视图第一次被调用时被调用。每次我回到这个视图时是否有任何方法被调用?颠倒呢!
我不得不删除-(void)viewDidAppear:(BOOL)animated;
为了这个工作:
-(void)viewWillAppear:(BOOL)animated
{
//YOUR CODE HERE (mine was the alert showing up)
}
您应该试试-(void)viewDidAppear:(BOOL)animated;
。不要忘记在实现过程中调用[super viewDidAppear:animated];
。
捕获此事件的另一种方法是使用委托方法:
-(void)navigationController:(UINavigationController *)navigationController
didShowViewController:(UIViewController *)viewController
animated:(BOOL)animated;
您可以访问UINavigationControllerDelegate Protocol Reference找到更多信息