有条件地选择标签栏项目

时间:2013-11-11 07:37:41

标签: ios

我想从UITabBarItem以编程方式选择一个选项卡。 我做了一些关于如何做到这一点的研究,我得到了如下答案:

  [self.parentViewController.tabBarController setSelectedIndex:2];

然而,它不起作用。我没有从viewDidAppear函数中调用它(正如在这个post中所建议的那样,因为我需要在其他地方有条件地调用它。这段代码只能在viewDidAppear函数中使用吗? 这是我的故事板的截图。 我从一个标有红色圆圈的viewController调用它,我的UITabBarController用黄色圆圈标记。对不起质量差的图像。 红色圆圈类是“facebook风格的侧栏菜单”实现的一部分。 我是iOS开发的新手,任何帮助都会非常感激。 非常感谢你!

enter image description here

2 个答案:

答案 0 :(得分:0)

试试这个

如果你的UITabBarController是rootViewController

AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
[appDelegate.tabBarController setSelectedIndex:2];

答案 1 :(得分:0)

最佳做法是,无论何时在应用程序中使用UITabBar,都要将应用程序设计为使用UITabBar作为rootViewController。您可以通过编码

有条件地选择tabItem

[self.tabBarController setSelectedIndex:1];

这可以在任何地方使用。