私はUITabBarとUINavigationBarを同時に使用する際に問題に直面しています。私の意図は、TabBarに3つのタブを表示させ、これらのタブのそれぞれにnavBarを表示してカスタム名を表示し、これらのタブのいくつかに追加ボタン(追加ボタンなど)を追加表示することです。UITabBarとUINavigationBarの使用
私はAppDelegateのdidFinishLaunchingWithOptionsのビューコントローラを作成:私はすべてであるこれらのビューコントローラのtabBarItemsにいくつかのタイトルや画像を追加した
self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = @[vc1, vc2, vc3];
次へ:
AAA *vc1 = [[AAA alloc] init];
BBB *vc2 = [[BBB alloc] init];
CCC *vc3 = [[CCC alloc] init];
はタブバーを作成し、それを人口をうまく動作しますが、アプリケーションの上にナビゲーションバーを表示したかったのです。だから私はナビゲーションコントローラを作成しましたが、私はそれを開始するために必要なビューコントローラを知りません。 vc1を使用してnavControllerをrootViewControllerに設定すると、アプリケーションはvc1のビューを表示してnavBarを表示しますが、tabBarは表示されません。
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:vc1];
self.window.rootViewController = navController;
//self.window.rootViewController = self.tabBarController;
私はからNavControllerを初期化し、rootViewControllerとからNavControllerを設定するtabBarControllerを設定しようとしました - この場合の景色、正しくタブバーとナビゲーションバーの表示には、私は、ビューのVC1、VC2、VC3に関連したnavBarItemsを持っていません。
これは私が(例えばAAA.m中)navBarItemsを作成する方法である:私はそれをすべて一緒に動作させるために行うに
- (instancetype)init {
self = [super init];
if (self) {
UINavigationItem *navItem = self.navigationItem;
navItem.title = @"name";
}
return self;
}
何が必要ですか?ありがとう。
EDIT:
私は、コードにいくつかの変更を行い、現在はナビゲーションバーが見えますが、唯一のUINavigationControllerのinitWithRootViewController方法で設定したビューコントローラです。たとえば、次のコードでは、vc2のすべてのビューとナビゲーションバーにタブバーが表示されます。私の意図は、これらの3つのVCのすべてにタブバーとナビゲーションバーを持つことです。
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:vc2];
self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = [NSArray arrayWithObjects:vc1, navController, vc3, nil];
self.window.rootViewController = self.tabBarController;
をコードのこれらの行を追加しますか? –
すべてのタブバービューでナビゲーションバーを表示したいです。私は別のビューで異なる情報を表示するためにそれをカスタマイズする方法を知っていますが、ここではタブバーを使って見えるようにすることはできません。 –