我使用了导航控制器,在TAbbar控制器的应用程序中,我遇到的问题是我无法将导航栏项添加到特定控制器的导航栏
当我做的时候
self.navigationCOntroller.navigationItem.rightBarButtonItem=aBArButtonItem;
没有显示任何内容
当我这样做时
self.tabController.navigationController.navigationItem.rightBArButtonItem=aBArButtonItem
然后相同的项目被添加到Tabbarcontroller中的所有viewCO控制器,我想在不同的控制器上显示不同的条形按钮项目,任何想法我怎么能实现这个?
答案 0 :(得分:1)
我终于明白了,我无法添加任何导航项,因为TabbarCOntroller是容器视图,以下代码帮助我
self.tabBarController.navigationItem.rightBarButtonItem=right;
我还必须使用
在第二个ViewCOntroller中覆盖此代码 self.tabBarController.navigationItem.rightBarButtonItem=nil;
只有这样我才能添加并响应导航栏中的NavigationItems
答案 1 :(得分:0)
尝试以下code
UINavigationController * navController = [[self.tabBarController viewControllers]objectAtIndex:[self.tabBarController selectedIndex]];
navController.navigationItem.rightBarButtonItem = aBarButtonItem
答案 2 :(得分:0)
而不是self.navigationController.navigationItem.rightBarButtonItem=aBArButtonItem;
尝试self.navigationItem.rightBarButtonItem=aBArButtonItem;
。这样您就可以从视图控制器访问navigationItem
,而不是从整个导航控制器
答案 3 :(得分:0)
您感兴趣的navigationItem
是viewController
的属性,而不是navigationController
或tabBarController
。
所以,如果你尝试:
self.navigationItem.rightBarButtonItem = aBArButtonItem;
你会取得更大的成功!