Swift 中的持久化 UIToolbar

Posted

技术标签:

【中文标题】Swift 中的持久化 UIToolbar【英文标题】:Persistent UIToolbar in Swift 【发布时间】:2015-01-21 21:14:57 【问题描述】:

我一直在寻找这个问题的答案,并找到了一些在 Obj-C 中做类似事情的答案,将工具栏添加到 appdelegate 等等,但我想知道是否有更好的方法来做到这一点在 Swift 中,以便工具栏显示在所有 VC 中。例如,this 或 this 的 Swift 版本。我找到了this 问题,但没有人提供任何答案,这是否意味着 Swift 没有更好的方法?我没有太多使用工具栏,而且我对 Swift 的经验不足,无法知道什么时候可以或不可以。感谢您的帮助。

【问题讨论】:

【参考方案1】:

UINavigationControllers 具有可选的UIToolbar。只需在您的第一个视图控制器(例如 viewDidLoad 中)开始取消隐藏它以使其在整个应用程序中显示,例如:

navigationController.toolbarHidden = false

您随后可以通过将项目添加到视图控制器的 toolbarItems 属性来设置每个视图控制器中工具栏的项目:

toolbarItems = itemsArray

【讨论】:

谢谢,@LyndseyScott。我快接近了,但我有一个快速的问题。您在哪里声明您的 itemsArray 以使其可以从其他 VC 访问?为了让我的工作,我必须让它全球化,这似乎是个坏主意。这不对吧? @judoTRON 哦,itemsArray。 (抱歉,前一秒回答了您的意思是您的意思是工具栏项)。使用 Swift,所有类变量无论如何都是全局的,因此您可以将它作为类变量在应用程序中的任何位置使用,并从其他任何位置访问它......从这个意义上说,itemsArray 是全局的,这很好。 好的,知道了,@LyndseyScott。非常感谢您的帮助。无法为您投票,但将其标记为已回答。

以上是关于Swift 中的持久化 UIToolbar的主要内容,如果未能解决你的问题,请参考以下文章

Swift 3 中的 Firebase 存储图像持久性

Core Data 和 Swift 中的计算属性与持久存储

CoreData学习:Core Data Stack(Swift)

Alluxio - 访问 underfs 中的现有文件

swift ios数据持久化UIImage

将 Objective-C 核心数据迁移到 Swift 持久化容器