【问题标题】:UIButton setTitleColor is not working when i set the button state to disable当我将按钮状态设置为禁用时,UIButton setTitleColor 不起作用
【发布时间】:2020-08-17 21:21:04
【问题描述】:

在我的应用程序中,我想禁用一个按钮,所以我编写了这样的代码

plusBtn.setTitleColor(.gray, for: .disabled)

我在viewDidLoad() 方法中编写了这段代码。在情节提要中,默认按钮颜色为绿色,但第一次在视图加载时它将以灰色禁用模式(我知道isEnabled 属性可以处理此问题,但我想这样做)还有一个更重要的事情当我将按钮状态更改为 .normal 时,它工作正常,但对于 .disable 它不起作用,为什么?

【问题讨论】:

    标签: ios swift xcode uibutton swift4


    【解决方案1】:

    使用此代码,您不会禁用该按钮。您只需设置禁用按钮的颜色即可。

    但是,如果您确实在情节提要中将属性 enabled 设置为 false 并且确实将您的按钮正确连接到您的代码,它就可以工作。我刚刚测试了它。见图片:

    【讨论】:

      【解决方案2】:

      写在viewWillAppear而不是viewDidLoad()

       override func viewWillAppear(_ animated: Bool) {
              super.viewWillAppear(animated)
              plusBtn.setTitleColor(.gray, for: .disabled)
          }
      

      【讨论】:

        【解决方案3】:

        我无法完全理解您在哪里将按钮状态设置为禁用,但请确保在将禁用状态的标题颜色设置为灰色后执行此操作。

        您可以尝试在两行都添加断点,看看哪个先执行。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2022-08-19
          • 1970-01-01
          • 2011-01-12
          • 2023-03-03
          • 1970-01-01
          • 2013-08-31
          • 2014-12-04
          相关资源
          最近更新 更多