UITabbarのMoreビューからUIViewがユーザーによってプッシュされたことを知る方法はありますか?
UITabBarに複数のビューがあり、それらがリストされているMoreビューに表示されるものもあります。UITabBarItemからプッシュされたときではなく、このMoreビューからビューがプッシュされたときを知りたいのですが。
ありがとう !
コントローラのナビゲーションコントローラがより多くのナビゲーションコントローラであるかどうかを確認できます。
-(void)viewDidLoad {
[super viewDidLoad];
if (self.navigationController == self.tabBarController.moreNavigationController) {
NSLog(@"Launcehed from more");
}else{
NSLog(@"Launcehed from tab bar");
}
}
あなたの質問は言いますUITabBar
が、私はあなたが意味しているのではないかと思いますUITabBarController
。一部のオプションが「詳細ビュー」に表示される方法に基づいています。これは、によって自動的に提供されUITabBarController
ます。
あなたがそうすることを意味するならばUITabBarController
、はい、それがより多くのオプションにあるかどうかを非常に簡単に判断することができますUIViewController
。UITabBarController
[self.tabBarController.moreNavigationController.viewControllers containsObject:self];
BOOL
これは、そのView Controller()のオプションがのセクションにself
リストされている場合にtrueを返します。More
UITabBar
いいえ、UITabbarController
その情報は公開していません。
UIViewをサブクラス化しsentFrom
、任意のコントローラーに追加するときにUIViewに渡すプロパティを追加できます。それを行う方法はまだ実装されていないので、自分でそのようなことを追跡する必要があります。