我想展示/隐藏一个UIBarButtonItem.我在storyboard的右边加了一个barButton.然后在viewDidLoad年,我得到了rightBarButtonItemnil.后来,我将其设置为我在storyboard中添加的button.这是我的代码:

// Right barButtonItem added in storybord:
@IBOutlet weak var deleteBarButton: UIBarButtonItem! 

// viewDidLoad
self.navigationItem.rightBarButtonItem = nil

// Later on...
self.navigationItem.rightBarButtonItem = self.deleteBarButton

当我把self.deleteBarButton设为rightBarButtonItem时,什么也没发生.它没有表现出来.我做错了什么?显示/隐藏barButtonItem的正确/最有效的方法是什么?

Update

我try 了以下方法:

self.deleteBarButton.hidden = true

但我得到了以下错误:

UIBarButtonItem没有名为"隐藏"的成员

推荐答案

刚刚得到答案!您只需创建一个strong IBOutlet,然后就可以执行以下操作:

// viewDidLoad
self.navigationItem.rightBarButtonItem = nil

// Later on...
self.navigationItem.rightBarButtonItem = self.deleteBarButton

Swift相关问答推荐

在Swift中initt()完成后运行一个函数

SwiftUI:使视图B与视图A具有相同宽度的视图A更改比率?

如何获取SCNCamera正在查看的网格点(SCNNode)的局部坐标和局部法线?

在SwiftUI中判断选项时避免重复查看

如何将函数参数(字符串文字)标记为可本地化?

swift:只要框架名称中有一个带有框架名称的公共实体,就指定框架中公共 struct 的路径

在数组中查找最大y值的x值

与视图交互使工具栏&;标题消失

如何观察UIViewRepresentable中的多个变化?

Swift Random Float Fatal Error:在无限范围内没有均匀分布

ScreenCaptureKit/CVPixelBuffer 格式产生意外结果

如何在 AppDelegate for Cocoa macOS 中创建 mainMenu 和菜单项?

无法使用 RealityKit 播放 USDZ 动画

如何从数据中读取以空结尾的字符串?

无法增加系统镜像的大小

为什么更改属性后动画会加速? SwiftUI

在 ViewController 的 UICollectionView 中拉取刷新

为什么'nil' 与 Swift 3 中的 'UnsafePointer' 不兼容?

如何在 Swift 中判断变量的类型

从 Swift 初始化程序调用方法