以编程方式工具栏项目不显示iOS swift 4

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了以编程方式工具栏项目不显示iOS swift 4相关的知识,希望对你有一定的参考价值。

我试图以编程方式将barButtonItem添加到工具栏,但没有项目显示,除了工具栏它自己

我的代码到目前为止:

self.navigationController?.setToolbarHidden(false, animated: false)
var items = [UIBarButtonItem]()

items.append(
     UIBarButtonItem(barButtonSystemItem: .bookmarks, target: nil, action: nil)
)

self.navigationController?.toolbar.setItems(items, animated: false)

enter image description here

答案

在你的代码中,一切都是正确的,但toolbarItems是空的。所以你应该这样做

self.toolbarItems = items

代替

self.navigationController?.toolbar.setItems(items, animated: false)
另一答案

这取决于你调用这段代码时,当你在你的init()子类的UIViewController中调用它时,navigationController还没有设置。但是当你在你的viewDidLoad中这样做时,它将被设置。

以上是关于以编程方式工具栏项目不显示iOS swift 4的主要内容,如果未能解决你的问题,请参考以下文章

iOS Swift标签栏控制器以编程方式添加项目(新标签)

Swift/iOS:UIPicker 显示在以编程方式更改数据源后点击后才会刷新

Facebook SDK 4.0 IOS Swift 以编程方式注销用户

使用 swift 4 以编程方式注册时未显示自定义单元格

Swift 3,iOS 10 - 以编程方式声明 UIStackView 不适合屏幕宽度

IOS swift scrollview以编程方式