如何防止uitabbaritem带我到“root”控制器?

时间:2013-01-15 09:27:04

标签: ios uitabbar uitabbaritem pushviewcontroller

在我的应用中,我有几个uiTabBarItems(如搜索,项目列表,帐户)。当我点击帐户时,用户应该输入凭据进行登录。登录成功后,更改tabbaritem的名称并按下新的视图控制器(Profile)。但是,当我单击配置文件tabbaritem时,会显示登录控制器(tabbar的那个分支的root)。有没有办法禁用此导航?

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:1)

将导航控制器放在标签栏控制器中。 即标签栏中的视图将具有导航控制器。 并且您可以使用tabBar:didSelectItem:委托来控制标签栏操作。希望这可以帮助你。

答案 1 :(得分:0)

好的,我终于设法(在Prajwal提供的答案的帮助下,你得到了+1)来解决这个问题。

我所做的就是使用以下代码删除索引0处的导航轨迹(因此我的登录控制器将从导航堆栈中删除):

NSMutableArray *navigationArray = [[NSMutableArray alloc] initWithArray: self.navigationController.viewControllers];

// [navigationArray removeAllObjects];    // This is just for remove all view controller from navigation stack.
[navigationArray removeObjectAtIndex: 2];  // You can pass your index here
self.navigationController.viewControllers = navigationArray;

我在这里找到Removing viewcontrollers from navigation stack