繁体   English   中英

iOS-在UINavigationController上设置UIToolBarItem

[英]iOS - Set UIToolBarItem on UINavigationController

我在情节提要中拖出一个工具栏项并将其设置在我的导航控制器上,但是当我运行代码时,它不存在,是否缺少某些内容?

编辑:

试图在我的viewDidLoad方法中的代码中进行设置:

UIBarButtonItem *rightBarButton = [[UIBarButtonItem alloc] initWithTitle:@"Map" style:UIBarButtonItemStyleBordered target:self action:@selector(viewMap)];
self.navigationItem.rightBarButtonItem = rightBarButton;

也不会工作。

这是在我的故事板中的设置方式:

在此处输入图片说明

更新:

刚发现我的问题。 在更新内容时,在控制器代码中,我更改了微调器的右侧栏按钮项,而从未将其设置回原来的状态。

UINavigationController已经内置了一个工具栏。它具有一个属性toolBarHidden ,默认情况下将其设置为YES ,这就是通常不可见的原因。 如果您正在使用情节提要,则可以通过选中选中“导航控制器”时在检查器中选中“显示工具栏”复选框来轻松使内置的底部工具栏可见。

有关更多详细信息,请参见此处UINavigationController文档

编辑:

好的,听起来您要尝试的是在视图控制器的UINavigationItem添加一个右键。 要在情节提要中执行此操作,请将“栏按钮项”从对象库拖到ViewController中的导航项上。 然后,您可以设置条形按钮项目的标题/样式/等。 如果在运行应用程序时仍未显示任何内容,请确保ViewController已正确连接,并且已正确连接到导航控制器。

还要确保将“条形按钮”项添加到视图控制器的“导航项”,而不是添加到视图控制器本身。 这是设置在故事板上的外观:

在此处输入图片说明

要将项目添加到导航栏中,您需要将“ Bar Button Item添加到视图控制器中包含的“导航项目”中。 转到您的情节提要,找到合适的VC,然后找到导航项(它位于导航控制器“场景”中显示的层次结构中)。 只需将Bar Button项拖到nav项下面的层次结构中,或直接拖到视觉生成器显示中的navbar上。

当该VC被推入堆栈时,导航控制器仅查看该VC的导航项。 因此,在viewDidLoad修改VC的导航项无效。

(我之前已经以编程方式完成了此操作,但是我没有代码,所以也许以后再添加...)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM