如何编辑默认导航栏?

Posted

技术标签:

【中文标题】如何编辑默认导航栏?【英文标题】:How to edit the default navigationBar? 【发布时间】:2017-04-18 02:57:45 【问题描述】:

这是 UI 图片,我想这样创建 searchBar:

但是,在情节提要中,我无法得到这个。

要达到我想要的效果,我该怎么做?

我想将我的默认导航栏更改为上部,上面有一个搜索栏。


更新

如果我在检查中选择Top BarNone,我会在带有透明条的navigationBar 下方看到这个。(忽略它下面的红色视图,我会添加它。)

【问题讨论】:

How to change Navigation Bar color in ios 7?的可能重复 【参考方案1】:

您无法从情节提要中获得所需的内容。您必须以编程方式将搜索栏添加到UINavigationBarnavigationItem。像这样,

let searchBar = UISearchBar() // Your Search bar
self.navigationController.navigationItem.titleView = searchBar

您可能会考虑的唯一另一件事是,这不应该是UINavigationBar,而是带有UISearchBar 子视图的UIView。您可以将它们放在故事板中。


编辑(评论回复)

"还有取消按钮怎么加?"

您可以轻松添加。像这样的:

let cancelButton = UIBarButtonItem(title: "Cancel", style: .done, target: self, action: #selector(cancelButtonTapped))
self.navigationController.navigationItem.rightBarButtonItem = cancelButton

“我可以在故事板中隐藏我的导航栏吗?”

是的。选择要在其中隐藏UINavigationBar 的视图控制器,选择检查器窗格,然后为“顶部栏”选择“无”。

【讨论】:

还有取消按钮怎么加? 我可以在故事板中隐藏我的导航栏吗? 是的,您可以隐藏导航栏。 @three-blocks 我再次更新了我的答案来回答你的评论。 @BrandonA 兄弟,看看我的更新问题,如果我没有设置,那就有问题了。【参考方案2】:

Brandon 已经给出了答案,现在如果您不想做代码工作,您可以从故事板创建自己的导航栏。执行以下步骤

    隐藏导航控制器上的原生导航栏。 现在使用前导、尾随、前 0 空间和恒定高度 64 来查看视图。 添加任何您想要的搜索栏按钮标题,并根据您的要求提供约束,并采取出口并做您想做的事。

更多问题可以咨询。

【讨论】:

以上是关于如何编辑默认导航栏?的主要内容,如果未能解决你的问题,请参考以下文章

如何将“更多”标签栏的编辑视图的导航栏设置为黑色?

如何删除默认导航栏按钮

如何更改导航栏的默认背景颜色? [复制]

如何在导航栏中显示编辑按钮

花钱做的drupal网站,如何编辑修改包括导航栏等在内的栏目的名称?

如何更改导航栏默认返回按钮