我目前正在开发一个应用程序,该应用程序需要我有不同的 UINavigationControllers - 所以我使用标签栏并尝试使用 UITabBar 在它们之间进行交换,所以我在应用程序委托中有一些代码,如下所示:
// Setting up the views for the tab controller
Friends *friends = [[[Friends alloc] initWithNibName:@"Friends" bundle:[NSBundle mainBundle]] autorelease];
WifiManager *wifi = [[[WifiManager alloc] initWithNibName:@"WifiManager" bundle:[NSBundle mainBundle]] autorelease];
UINavigationController *locationController = [[UINavigationController alloc] initWithRootViewController:wifi];
UINavigationController *friendsController = [[UINavigationController alloc] initWithRootViewController:friends];
//Set up the tab controller
tabBarController = [[UITabBarController alloc] init];
tabBarController.viewControllers =
[NSArray arrayWithObjects:locationController, friendsController, nil];
//Add the tab bar to the window
[window addSubview:tabBarController.view];
这将编译并加载第一个 UINavigationController 但是当我单击另一个导航控制器时,我得到:
*** -[NSCFData tabBarItem]: unrecognized selector sent to instance 0x1152b0'
最奇怪的部分是我可以将标签控制器与单个 UINavigationController 一起使用,并且一切正常,但是当我尝试添加第二个时,它惨遭失败 - 有没有人知道我在这里做错了什么?
先感谢您
詹姆士