单击导航栏按钮时,将标签栏按钮设置为未选中

时间:2015-02-06 08:12:21

标签: ios ios7 ios8 uitabbarcontroller

我正面临标签栏的问题,当我点击导航栏按钮时,标签栏按钮应该被取消选中,我试过但没有做到这一点。任何人都可以帮我解决问题。

1 个答案:

答案 0 :(得分:0)

如果我了解您的需求,我想您想要做的就是在标签栏中根本不选择任何项目。

这样做:

[tabBar setSelectedItem:nil];

应该是你需要的。

仅当您的tabBar未由UItabBarController处理时。否则你会得到以下例外。

  

不允许直接修改由标签栏控制器管理的标签栏。

如果您阅读了UItabBarController的tabBar属性上的文档,那么这种行为是不合逻辑的:UITabBarController documentation - tabBar

  

您永远不应该尝试操纵存储在此属性中的UITabBar对象。如果您尝试这样做,标签栏视图将引发异常。要配置选项卡栏界面的项目,您应该将一个或多个自定义视图控制器分配给viewControllers属性。标签栏从您指定的视图控制器中收集所需的标签栏项目。

通过阅读此页面,您会看到UITabBarController无法选择tabBar上的项目以外的项目(moreNavigationController UITabBarController documentation - moreNavigationController除外)


编辑:如果您确实想要显示您的tabBar,您可以欺骗用户并让他们相信通过将“未选择的样式”应用于所选标签来取消选中标签。这个问题应该为您提供执行此操作所需的一切:How to change inactive icon/text color on tab bar?