アプリケーションをセットアップしようとしているので、複数のタブバー項目を同じビュー コントローラーにリンクできますが、異なるパラメーターを渡してビューを適切にセットアップできます。
私のセットアップは次のとおり です TabBarController NavbarController - TabBarItem1 PeopleView NavbarController - TabBarItem2 ContentView
セットアップをしたい
TabBarController
NavbarController1 - TabBarItem1
Links to: PeopleView
NavbarController2 - TabBarItem2
Links to: ContentView
NavbarController3 - TabBarItem3
Links to: ContentView //Same VC as TabBaritem 2.
以下のコードを appdelage に入れ、UITabBarControllerDelegate を実装しようとしましたが、アプリケーションは常にこのエラーでクラッシュします
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '- [UITabBarController pushViewController:animated:]: unrecognized selector sent to instance 0x8fce7c0'
これが私が実装したコードです:
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
NSLog(@"controller class: %@", NSStringFromClass([viewController class]));
NSLog(@"controller title: %@", viewController.title);
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
MediaList *mediaList = [storyboard instantiateViewControllerWithIdentifier:@"SB_MediaList"];
[(UINavigationController*)self.window.rootViewController pushViewController:mediaList animated:YES];
}
何よりも、まったく同じ機能に対して 3 つのクラスと画面を使用することを避けるために、これを達成するための適切な方法が必要です。
すごく初歩的な質問ですみません…。