如何在导航控制器中自定义工具栏

Posted

技术标签:

【中文标题】如何在导航控制器中自定义工具栏【英文标题】:How to Customize Toolbar inside a Navigation Controller 【发布时间】:2015-07-28 15:52:39 【问题描述】:

我有一个菜鸟问题。

我正在开发一个使用导航控制器的简单应用程序(因此,顶部是导航栏,底部是通过界面构建​​器显示的工具栏;我使用情节提要)。这个导航控制器在不同的屏幕上显示了许多相关的表格(表格视图)。

我的问题是:我想为每个屏幕填充工具栏。理想情况下,我想在那里填充一个标签,显示一些关于当前显示的表格视图内容的摘要文本 - 但我知道这可能不是这些工具栏的目的,并且不受 UIKit 工具栏视图的支持. 但是应该起作用的(据我所知)是在那里显示按钮 - 针对当前屏幕进行个性化。但我终生无法弄清楚如何做到这一点(我在界面生成器中尝试过 - 但在导航控制器控制的每个屏幕上,工具栏都会显示,但无法访问;它也没有在该屏幕的轮廓 - 只有导航控制器的轮廓显示对工具栏的引用,如果我更改其中的任何内容(这是可能的,它不会显示在导航控制器控制的任何屏幕中)。

希望这足够清楚。我认为这是一个非常简单的问题——但我被困住了;谷歌搜索对我没有帮助。也许你们中的某个人可以给我指出一些要查找的关键字?

非常感谢您的考虑!

最好的问候, 比约恩

【问题讨论】:

【参考方案1】:

您究竟想将什么拖入导航控制器底部工具栏中?

根据我的经验,您只能拖出条形按钮项以及固定和灵活空间。

【讨论】:

感谢您的回复!这也是我从那以后想到的。我试图将 UILabel 放在那里 - 但它没有“坚持”(工具栏拒绝了它 - 因为缺乏更好的术语来描述 Storyboard 中发生的事情;可能。你可以用专业术语来澄清)。从那以后,我找到了一篇提供解决方案的文章 link - 不幸的是,我无法在 Xcode 7 beta 中重现(由于我缺乏技能而可能)。到目前为止,我还是更改了普通条形按钮项目的标题,但这是不灵活的。

以上是关于如何在导航控制器中自定义工具栏的主要内容,如果未能解决你的问题,请参考以下文章

显示导航控制器时在动画中自定义幻灯片根本无法快速工作

在 iOS 导航控制器的代码中自定义图像大小

UITableView 中自定义单元格中的导航控制器和 UIImageView

在ios中自定义导航栏

无法将自定义按钮添加到导航控制器的工具栏

如何仅在我的活动页面中自定义导航项元素