我有一个带有几个UIBarButtons的工具栏 - 它嵌入到少数几个视图中。可以根据需要启用/禁用按钮。问题是,每次切换到新视图时,禁用按钮会在恢复其禁用状态之前亮起几分之一秒。我尝试从故事板初始化处于禁用状态的按钮,并从工具栏视图控制器中的viewDidLoad
移动代码。没运气。我已经被困在这一点几天了...任何建议都将不胜感激!
出于测试目的,我一直在ToolBarViewController.swift
中使用以下代码,其中notesButton是IBOutlet
类型的UIBarButtonItem
。
override func viewDidLoad() {
super.viewDidLoad()
notesButton.isEnabled = false
}
正如您所看到的,当我通过按下按钮更改视图时,设置按钮将恢复完全不透明度,然后恢复其禁用的外观:
答案 0 :(得分:0)
使用渲染模式原始图像设置图像,因此它将始终保持原始状态,而不会根据按钮状态进行更改。
notesButton.image = UIImage(named: "YourImageName")?.withRenderingMode(UIImageRenderingMode.alwaysOriginal)
PS:我还没有对此进行测试,您可以尝试让我知道它是否有效或者可以将UIToolBar色调或按钮颜色检查为白色,这样它将始终保持白色。