1

我在情节提要中拖出一个工具栏项并将其设置在我的导航控制器上,但是当我运行我的代码时它不存在,是我遗漏了什么吗?

编辑:

尝试在代码中设置它以及在我的 viewDidLoad 方法中:

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

也不行。

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

在此处输入图像描述

更新:

刚发现我的问题。在我的控制器代码中,当我更新它的内容时,我更改了微调器的右栏按钮项,并且从未将其设置回以前的状态。

4

2 回答 2

4

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

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

编辑:

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

还要确保将条形按钮项添加到视图控制器的导航项,而不是视图控制器本身。以下是设置在情节提要中的外观:

在此处输入图像描述

于 2012-02-17T18:22:26.603 回答
1

要将项目添加到导航栏,您需要添加到包含在视图控制器中Bar Button Item的导航项目。转到您的故事板,找到正确的 VC,然后找到导航项(它位于导航控制器“场景”中显示的层次结构中)。只需将 Bar Button Item 拖到导航项下方的层次结构中,或直接拖到可视化构建器显示中的导航栏上。

当 VC 被压入堆栈时,导航控制器只会查看 VC 的导航项;因此修改 VC 的导航项viewDidLoad没有任何效果。

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

于 2012-02-17T20:40:31.300 回答