2

有没有办法让我区分我的视图控制器 viewDidAppear 方法是在用户切换选项卡后调用还是在导航控制器弹出后调用?

谢谢

4

1 回答 1

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
    }
}
于 2013-07-17T08:50:13.520 回答