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 に答える