添加到情节提要的 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?