当我的应用程序启动时,它会显示一个导航视图,其中包含一个tableview和一个底部的tabbar。
这样的事情:
TabBar --> UINav1, UINav2, UINav3, UINav4
每个UINav都包含一个最终显示的ViewController。
如果用户从ListView(主屏幕)移动到详细视图,我希望能够更改UITabBar。
我不必更换整个标签栏至少更改/删除按钮。
但是,如果我使用上面的模型(将TabBarController设置为根控制器),那么它似乎在导航过程中几乎卡住了并且不可变。我能做的最好的就是将它隐藏在某些视图中。
一直在试图解决这个问题
谢谢!
答案 0 :(得分:0)
您可以使用
- (void)setViewControllers:(NSArray *)viewControllers animated:(BOOL)animated
在你的UITabBarController中设置tabBar你想要的任何viewController
编辑:你可能不想看这个问题,希望看起来很相似iPhone, how I hide a tab bar button?
答案 1 :(得分:0)
这种情况并不常见,但您可以以模态方式呈现新的标签栏控制器及其关联的视图。
假设您的listView是一个UITableViewController,您可以在didSelectRowAtIndexpath
方法中推送新的标签栏控制器。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
// ...
[self.tabBarController presentModalViewController:(UIViewController *)modalViewController animated:(BOOL)animated]
PS:在这种情况下,我会非常小心你如何构建你的UI,因为它会让用户感到非常困惑。)
我希望它有所帮助。 ROG
答案 2 :(得分:0)
经过进一步研究,我认为这是不可行的。