UIToolBar按钮闪烁

时间:2018-06-06 13:38:05

标签: swift uibarbuttonitem uitoolbar

我有一个带有几个UIBarButtons的工具栏 - 它嵌入到少数几个视图中。可以根据需要启用/禁用按钮。问题是,每次切换到新视图时,禁用按钮会在恢复其禁用状态之前亮起几分之一秒。我尝试从故事板初始化处于禁用状态的按钮,并从工具栏视图控制器中的viewDidLoad移动代码。没运气。我已经被困在这一点几天了...任何建议都将不胜感激!

出于测试目的,我一直在ToolBarViewController.swift中使用以下代码,其中notesButton是IBOutlet类型的UIBarButtonItem

override func viewDidLoad() {
    super.viewDidLoad()
    notesButton.isEnabled = false
}

正如您所看到的,当我通过按下按钮更改视图时,设置按钮将恢复完全不透明度,然后恢复其禁用的外观:

enter image description here

1 个答案:

答案 0 :(得分:0)

使用渲染模式原始图像设置图像,因此它将始终保持原始状态,而不会根据按钮状态进行更改。

notesButton.image = UIImage(named: "YourImageName")?.withRenderingMode(UIImageRenderingMode.alwaysOriginal)

PS:我还没有对此进行测试,您可以尝试让我知道它是否有效或者可以将UIToolBar色调或按钮颜色检查为白色,这样它将始终保持白色。

相关问题