viewDidAppear tab switch vs nav pop

时间:2013-07-17 08:09:10

标签: ios objective-c cocoa-touch

有没有办法让我区分用户切换标签后或弹出导航控制器后调用我的视图控制器viewDidAppear方法?

谢谢

1 个答案:

答案 0 :(得分:1)

viewWillAppear和viewDidAppear都会在导航弹出窗口和标签栏开关上调用,您可以使用标签栏委托方法区分它(如果尚未实现它,请执行它)

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item

可能会在这里设置一个Bool。

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
     YOUR_VIEW_STATUS = YES;
}

-(void)viewWillAppear:(BOOL)animated
{
    [self viewDidAppear:YES];

    if(!YOUR_VIEW_STATUS)
    {  
    //navigation pop or push
    }

    else
    {
    //tab bar switch
    }
}