ユーザーがタブを切り替えた後、またはナビゲーションコントローラーがポップされた後に、ビューコントローラーのviewDidAppearメソッドが呼び出されたかどうかを区別する方法はありますか?
ありがとう
ユーザーがタブを切り替えた後、またはナビゲーションコントローラーがポップされた後に、ビューコントローラーのviewDidAppearメソッドが呼び出されたかどうかを区別する方法はありますか?
ありがとう
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
}
}