选项卡控制器未显示标签栏按钮项

3
我是Objective-C的新手,尤其是在使用storyboards方面。如下图所示,我正在尝试在UITabBarController和UINavigationController中使用一个bar按钮项。 enter image description here 但是一旦我在模拟器中运行项目,这个项目就不会显示出来。如果可能的话,我希望有一个非编程解决方案。 enter image description here

@SevenBits 没有显示,我会附上模拟器的截图。 - Ricardo
@SevenBits 我已经更新了问题。 - Ricardo
嗯...看起来你在界面中使用了导航栏,但它被你的导航控制器的导航栏挡住了。尝试在你的viewDidLoad方法中添加self.navigationController.navigationBarHidden = YES;,看看会发生什么... - Lyndsey Scott
或者,如果您想在视图控制器的界面构建器中隐藏视图的导航栏,可以尝试在“模拟指标”中选择“顶部栏”“无”。 - Lyndsey Scott
@LyndseyScott 嗯,我正在添加一个导航项,但它不起作用,但是 Bar button item 可以!所以现在我想知道这是否是最好的方法。 - Ricardo
显示剩余6条评论
2个回答

2

好的,要完成这个操作:

当您创建选项卡视图控制器时。您必须添加一个导航控制器来处理每个选项卡。

选项卡视图控制器 --> 导航控制器 --> 视图控制器1。

然后将工具栏按钮项添加到视图控制器1中。然后继续添加segue。

现在,它还不会显示出来。

但是,如果您进入您的视图控制器1代码:从故事板中将工具栏按钮项的引用添加到视图控制器1文件中。然后,在ViewWillAppear()中:

self.tabBarController.navigationItem.rightBarButtonItem = _btnNewContact;

从那里开始,它将会显示出来,你在storyboard中配置的segue应该可以完美地工作!=)


1
在我花了一段时间尝试找到最佳方法后,我最终意识到我应该从一开始就阅读官方苹果文档参数 viewController 被推入堆栈的视图控制器。该对象不能是标签栏控制器的实例,并且不能已经在堆栈中。
换句话说,我的方法只是一个糟糕的设计。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接