我创建了一个标签栏控制器,如下所示:
tabBarController = [[UITabBarController alloc] init];
tabBarController.view.frame = CGRectMake(0, 0, 320, 460);
NSMutableArray *tabsArray = [[NSMutableArray alloc] init];
//tab1: dive info
LogsDetailDive *logsDetailDive = [[LogsDetailDive alloc] initWithNibName:@"LogsDetailDive" bundle:nil];
[logsDetailDive initWithLogSelected:logSelected:siteSelected];
logsDetailDive.title = @"Info";
logsDetailDive.tabBarItem.image = [UIImage imageNamed:@"/images/logs.png"];
[tabsArray addObject:logsDetailDive];
//tab2: deco info
...
//tab3: equipment info
...
//tab3: computer info
...
tabBarController.viewControllers = tabsArray;
[logsDetailDive release];
[self.view addSubview:tabBarController.view];
此标签控制器从上一个表视图推送到导航控制器。 我现在想要的是显示从LogsDetailDive中的tableview推送的另一个视图,但我真的无法理解我错过了什么,因为它不起作用。 你能提出什么建议吗? 感谢
答案 0 :(得分:0)
因为UITabBarController类继承自UIViewController类,所以选项卡栏控制器具有可通过view属性访问的自己的视图。部署选项卡栏界面时,必须将此视图安装为窗口的根目录。与其他视图控制器不同,标签栏界面不应该作为另一个视图控制器的子项安装。
所以底线,这不应该做,并会导致一些问题。如果您需要标签栏布局,则应使用工具栏。