TabBarController
すべてのタブで同じコントローラーに異なるコンテンツを表示させたいので、プログラムで作成します。コンテンツはによってフェッチされますID
。ストーリーボードIDは、使用するのと同じ方法で使用しますinitWithNibName:
。
私はAppDelegateでこれを行います:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
UITabBarController *tabBarController = [[UITabBarController alloc] init];
for (int i = 0; i < 7; i++) {
MyViewController *svc = [storyboard instantiateViewControllerWithIdentifier:@"MyView"];
[svc setID: i];
[tabBarController addChildViewController:svc];
}
[self.window makeKeyAndVisible];
[self.window setRootViewController: tabBarController];
return YES;
}
ただし、TabBarには7つのタブのうち5つしか表示されません。同時に表示できるタブは5つだけなので、これは問題ありません。残念ながら...[その他]ボタンは表示されません。したがって、最後の2つのタブにはアクセスできません。
[その他]ボタンを強制的に表示する方法、または表示されない理由を誰かが知っていますか?
よろしく!