添加到情节提要的 UIBarButtonItem 在运行时不会出现

Posted

技术标签:

【中文标题】添加到情节提要的 UIBarButtonItem 在运行时不会出现【英文标题】:UIBarButtonItem added to storyboard does not appear at runtime 【发布时间】:2014-04-18 00:24:01 【问题描述】:

当我尝试将 UIBarButtonItem 添加到我的 UIViewController 时,运行时没有任何显示。

我做了什么:

    我从一个全新的单视图项目开始。 我将一个 UIBarButtonItem 拖到视图控制器中。 我现在可以在情节提要中查看和自定义项目,但是当我运行它时,没有工具栏。

注意:Bar Button Item 显示为 View Controller 的直接子项。

如何让 UIToolbar 出现?

【问题讨论】:

只需将您的视图控制器嵌入故事板中的导航控制器 【参考方案1】:

添加工具栏项作为 UIViewController 的直接子项对应于视图控制器的 toolbarItems 属性。文档指出:

如果此视图控制器嵌入导航控制器中 界面,并且导航控制器显示一个工具栏,这 属性标识要在该工具栏中显示的项目。

因此,您必须执行以下操作:

    将 UIViewController 嵌入到 UINavigationController 中(例如,在情节提要中选择 UIViewController,选择 Editor > Embed In > Navigation Controller)。 选择 UINavigationController 并选中显示 Shows Toolbar 的框(这类似于在视图中调用 self.navigationController.toolbarHidden = NO did load 方法)。

或者,如果您想恢复导航栏不可见的行为,请取消选中 显示导航栏 属性。

另一种方法是不使用 toolbarItems 属性,而是添加您自己的工具栏并自己维护它(例如,添加一个 IBOutlet 并以这种方式与之交互)。

【讨论】:

以上是关于添加到情节提要的 UIBarButtonItem 在运行时不会出现的主要内容,如果未能解决你的问题,请参考以下文章

无法将 Action 设置为在情节提要上创建的 UIBarButtonItem

如果稍后将情节提要添加到项目中,为啥单视图应用程序不加载情节提要?

如何在 Swift 中更改 UIBarButtonItem 的 tintColor?

iOS UIBarButtonItem 链接到 ViewController

将 UIView 添加到情节提要

如何将我的新视图添加到情节提要?