せっかちな人のために:
ルートビューコントローラーがiPadアプリケーションに似たタブバーコントローラーであるナビゲーションコントローラーが欲しいです。私はIOS5とストーリーボードを使用しています。
傾いた読書のために:
私のストーリーボードでは、UINBavigationControllerに埋め込まれているUITabBarControllerに6つのタブがあり、3つのタブが表示された後に[詳細]ボタンが表示されます。
そうすることで、さらに押すと2つのナビゲーションバーが表示されます。
だから私はTabBarControllerをサブクラス化します:
//@implentation MyTabController
- (void)viewDidLoad
{
self.moreNavigationController.wantsFullScreenLayout = NO;
self.delegate = self;
}
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
// hide nav bar if current controller is "More" controller
self.navigationController.navigationBarHidden =
viewController == self.moreNavigationController;
}
素晴らしい、これは私に与えます:
私の推測では、ステータスバーを説明するためにビューを中継する必要があったので、試してみました
[self.view setNeedsLayout:YES];
しかし、UIViewにsetNeedsLayoutのセレクターが含まれていないというエラーが表示されるので、ステータスバーを説明するmoreNavigationController.navigationBarを取得するにはどうすればよいですか?
更新:
これに関連する2番目の問題があります。「編集」ボタンを押すと、編集コントローラーがモーダルに表示されます。そのナビゲーションバーは、被保険者のコントローラーの下に(アニメーションの後に)表示され、タッチを受け取りません。