【问题标题】:Change UIButton textlabel color by touching the button Swift 3通过触摸按钮 Swift 3 更改 UIButton 文本标签颜色
【发布时间】:2017-03-27 16:21:56
【问题描述】:

我阅读了一些文章,但没有找到解决我问题的解决方案。目前我正在用 Swift 3 构建一个 iOS 应用程序。我在视图中放置了一个名为 registerButton 的 UIButton。如果有人触摸按钮,则会出现一个新的 ViewController(newController)。除此之外,当用户触摸按钮并按住它时,应该更改 registerButton.textlabel.setColor() 的颜色吗? newController 的显示有效,但 textLabel 的更改颜色无效。我在注册函数中更改了 registerButton 的颜色。有人有想法吗?谢谢

var registerButton: UIButton = {
    let button = UIButton(type: .system) 
    button.setTitle("Registration", for: .normal)
    button.setTitleColor(UIColor.white, for: .normal)
    button.addTarget(self, action: #selector(registration), for: .touchUpInside) // Action
    return button
}()

   func registration(){

    let color = UIColor(r: 255, g: 0, b: 102)// red
    registerButton.setTitleColor(color, for: .highlighted)
    let newController = ViewController()

    present(newController, animated: true, completion: nil)

  }

Button normal

Button pressed no red text label

【问题讨论】:

  • 您想在按下按钮时更改按钮文本的文本颜色。对吧??
  • @Md.易卜拉欣·哈桑 没错!我想在按下按钮时更改按钮的颜色。如果我使用状态 .touchDown (@dfd 提到),则无法按住按钮。新的 ViewController 立即出现。

标签: ios swift uibutton


【解决方案1】:
var registerButton: UIButton = {
let button = UIButton(type: .system) 
button.setTitle("Registration", for: .normal)
button.setTitleColor(UIColor.white, for: .normal)
button.addTarget(self, action: #selector(colorChange), for: .touchDown)
button.setTitleColor(.red, for: .highlighted)
// Action
return button
}()

这应该可以正常工作

【讨论】:

  • 谢谢你的工作。问题是我更改了注册功能中的颜色。现在我更改存储属性 registerButton 中的颜色!
【解决方案2】:

尝试在创建按钮时更改状态Focused的颜色,而不是在按下时。

     var registerButton: UIButton = {
    let button = UIButton(type: .system) 
    button.setTitle("Registration", for: .normal)
    button.setTitleColor(UIColor.white, for: .normal)
    button.setTitleColor(UIColor.red, for: .focused)
    button.addTarget(self, action: #selector(registration), for: .touchUpInside) // Action
    return button
}()

【讨论】:

  • focused无关
  • 但是在创建按钮时?
猜你喜欢
  • 2015-03-31
  • 1970-01-01
  • 2017-02-27
  • 1970-01-01
  • 2017-01-17
  • 1970-01-01
  • 2014-09-03
  • 2013-12-24
  • 1970-01-01
相关资源
最近更新 更多