我目前有许多viewControllers与我的tabBarController通过Storyboard有关系。鉴于某些设置,我想以编程方式使某个viewController隐藏或可见。我可以隐藏整个tabBar,但那不是我追求的。我一直在玩Xcode和淘网,但找不到解决方案。下面的一些东西对我来说不起作用!
[[self.tabBarController.tabBar.items objectAtIndex:2] setHidden:YES];
答案 0 :(得分:9)
使用类似的代码来解决问题。
NSMutableArray *newTabs = [NSMutableArray arrayWithArray:self.tabBarController.viewControllers];
[newTabs removeObjectAtIndex: 3];
[newTabs removeObjectAtIndex: 2];
[self.tabBarController setViewControllers:newTabs];
答案 1 :(得分:2)
事实证明你可以在一行中完成:
tabBarController?.viewControllers?.remove(at: 1)
假设1
是您要删除的项目的索引。
答案 2 :(得分:0)
要更改UITabBar
,请将其items
属性设置为新的
UITabBar *tabBar = self.tabBarController.tabBar;
NSMutableArray *newTabs = [NSMutableArray arrayWithArray:tabBar.items];
[newTabs removeObjectAtIndex: 2];
tabBar.items = newTabs;