我在UINavigationController中有一个UITabBarController,我知道该UINavigationController的iOS文档说:
rootViewController
The view controller that resides at the bottom of the navigation stack. This object cannot be an instance of the UITabBarController class.
因此,这是否意味着如果我已经在导航堆栈上有UIViewControllers,那么一旦它不是根项,就可以推送一个UITabBarController没关系吗?
我现在有这个,除了我弹出UITabBarController时,一切似乎还好,在任何TabBarItems ViewController中都没有调用dealloc或viewDidUnload,我是否需要做一些类似的事情才能使viewWillAppear正常工作?
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
[viewController viewWillAppear:NO];
}
谢谢
最佳答案
我不确定UINavigationController中是否有UITabBarController是否可以正常工作。
我通常反过来做
companyNavController = [[[UINavigationController alloc] initWithRootViewController:companyViewController] autorelease];
companyNavController.tabBarItem = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemSearch tag:1];
[tabBarController setViewControllers:[NSArray arrayWithObjects:phoneBookNavController, companyNavController, faveNavController, settingsNavController, nil]];
如果您想隐藏应用程序的TabBar部分,则可以始终尝试使用hidesBottomBarWhenPushed来管理它。
高温超导
关于ios - NavigationController中的TabBarController,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5977388/