我正在使用一些没有标签栏的xib和一些带标签栏的xib。
在开始我加载没有标签栏导航栏的xib然后流程正在工作。但是如果我加载带有标签栏导航栏的xib,那么我们的所有视图幻灯片下方和半标签栏都没有显示。请有人帮助我尽快。
Pleaseeee !!!!!!
答案 0 :(得分:0)
您是在加载标签栏控制器还是只加载一个标签栏?是否在使用导航控制器推送视图后立即发生?如果是这样的话,同样的事情发生在我身上(link here),我一直无法修复它。我认为它不受Apple支持且不推荐,你可以在NavigationController类参考中找到:
我所做的是将一个标签栏(不是标签栏控制器)添加到正在推送的视图中,然后以编程方式对其进行配置。你可以在这里找到一个很好的例子(http://discussions.apple.com/thread.jspa?threadID=2099944&tstart=0),但它会是这样的:
- (void)activateTab:(int)index {
switch (index) {
case 1:
if (tab1ViewController == nil) {
self.tab1ViewController =
[[Tab1ViewController alloc] initWithNibName:@"Tab1View" bundle:nil];
}
[self.view addSubview:tab1ViewController.view];
if (currentViewController != nil)
[currentViewController.view removeFromSuperview];
currentViewController = tab1ViewController;
break;
case 2:
if (tab2ViewController == nil) {
self.tab2ViewController =
[[Tab2ViewController alloc] initWithNibName:@"Tab2View" bundle:nil];
}
[self.view addSubview:tab2ViewController.view];
if (currentViewController != nil)
[currentViewController.view removeFromSuperview];
currentViewController = tab2ViewController;
break;
default:
break;
}
}
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item {
[self activateTab:item.tag];
}
- (void)viewDidLoad {
[super viewDidLoad];
[myTabBar setSelectedItem:[myTabBar.items objectAtIndex:0]];
[self activateTab:1];
}
当然,您需要声明Tab Bar以及此处使用的三个View控制器(tab1ViewController,tab2ViewController和currentVideoController)。
你没有提供太多细节,但我希望这会有所帮助。