【问题标题】:Unable to add Navigation Items on Navigation bar无法在导航栏上添加导航项
【发布时间】:2014-12-25 11:05:38
【问题描述】:

我使用了导航控制器,在我的应用程序中的 TAbbar 控制器中,我面临的问题是我无法将导航栏项添加到特定控制器的导航栏中

当我这样做时

self.navigationCOntroller.navigationItem.rightBarButtonItem=aBArButtonItem;

什么都不显示

当我这样做时

self.tabController.navigationController.navigationItem.rightBArButtonItem=aBArButtonItem

然后将相同的项目添加到 Tabbarcontroller 中的所有 viewCONtrollers 中,我想在不同的控制器上显示不同的栏按钮项目,有什么想法可以实现吗??

【问题讨论】:

  • self.navigationController != nil 吗?
  • 不,它不是零,导航控制器存在且可见

标签: ios uitabbarcontroller uinavigationbar


【解决方案1】:

我终于弄明白了,我无法添加任何导航项,因为 TabbarCONtroller 是容器视图,下面的代码帮助了我

  self.tabBarController.navigationItem.rightBarButtonItem=right;

我还必须在第二个 ViewCONtroller 中重写此代码

  self.tabBarController.navigationItem.rightBarButtonItem=nil;

只有这样我才能在导航栏中添加和响应 NavigationItems

【讨论】:

    【解决方案2】:

    试试self.navigationItem.rightBarButtonItem=aBArButtonItem;,而不是self.navigationController.navigationItem.rightBarButtonItem=aBArButtonItem;。这样您就可以从视图控制器访问navigationItem,而不是从整个导航控制器

    【讨论】:

      【解决方案3】:

      您感兴趣的navigationItem 是您的viewController 的属性,而不是navigationControllertabBarController

      所以如果你尝试:

      self.navigationItem.rightBarButtonItem = aBArButtonItem;
      

      你会取得更大的成功!

      【讨论】:

        【解决方案4】:

        试试下面的code

        UINavigationController * navController = [[self.tabBarController viewControllers]objectAtIndex:[self.tabBarController selectedIndex]];
            navController.navigationItem.rightBarButtonItem = aBarButtonItem
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-01-03
          • 1970-01-01
          • 2019-08-14
          • 1970-01-01
          • 1970-01-01
          • 2016-09-23
          • 2012-03-19
          • 2016-04-11
          相关资源
          最近更新 更多