我目前正在尝试将UITabBar
用于包含7个tabBar
项的iOS应用。
当我使用故事板时,我能够实现所有7 tabBarItems
。
当我以编程方式添加tabBarItems
时,它强制执行"更多"用于访问其他tabBarItems的按钮。
有没有办法以编程方式保留所有7个tabBarItems,就像我手动创建UITabBar
时一样?
我用来在appdelegate.m中构建uitabbar的代码
self.tabBarController = [[UITabBarController alloc] init];
FirstViewController *firstVC = [[FirstViewController alloc] init];
SecondViewController *secondVC = [[SecondViewController alloc] init];
ThirdViewController *thirdVC = [[ThirdViewController alloc] init];
FourthViewController *fourthVC = [[FourthViewController alloc] init];
FifthViewController *fifthVC = [[FifthViewController alloc] init];
SixthViewController *sixthVC = [[SixthViewController alloc] init];
SeventhViewController *seventhVC = [[SeventhViewController alloc] init];
NSArray *controllers = @[firstVC, secondVC, thirdVC, fourthVC, fifthVC, sixthVC, seventhVC];
self.tabBarController.viewControllers = controllers;
self.window.rootViewController = self.tabBarController;
[_window addSubview:_tabBarController.view];
答案 0 :(得分:5)
根据设计,你只能从苹果文档中获得5个
如果向viewControllers属性添加五个以上的项目,则为 标签栏控制器自动插入特殊视图控制器 (称为更多视图控制器)来处理显示 其他物品。更多视图控制器提供自定义界面 列出表中的其他视图控制器,可以 展开以容纳任意数量的视图控制器。更多视图 控制器无法自定义或选择,也不会出现在任何控制器中 由标签栏控制器管理的视图控制器列表。它 在需要时自动显示并与您的分开 自定义内容。你可以访问它来获得对它的引用 UITabBarController的moreNavigationController属性。
它只是不推荐,但如果你坚持你需要使用一个库或者使用工具栏并添加许多UIBarButtonItems。