如何在IOS Swift中隐藏显示UIButton文本而不是按钮

时间:2018-04-11 09:42:15

标签: ios swift

1我在iOS swift面临一个问题。我正在尝试隐藏并显示UIButton列表中添加的UITextview文本。我想隐藏按钮文本点击并显示重新点击按钮。我不能保持按钮文本为零,因为我根据字母表给按钮提供了背景颜色。

[enter image description here]

请帮帮我 提前致谢

我的问题没有解决

4 个答案:

答案 0 :(得分:1)

  1. 在状态正常和选定状态下设置按钮标题颜色
  2. 点击按钮时,只需简单改变状态即可。
  3. //设置

    // let button = <your button>
    button.setTitleColor(<yourColor>, for: .normal)
    button.setTitleColor(UIColor.clear, for: .selected)
    

    //行动

    @IBAction func didSelectButton(_ button: UIButton) {
        button.isSelected = !button.isSelected
    }
    

答案 1 :(得分:1)

正如你所说,你不能忽略按钮的文字,你应该这样做,

您也可以实现此Bool扩展,

extension Bool {
    mutating func toggle() {
        self = !self
    }
}


@IBAction func myButton(_ sender: UIButton) {
    sender.titleLabel?.isHidden.toggle()
}

这将显示并隐藏按钮的titleLabel文字。

<强>更新

@IBAction func btnTapped(_ sender: UIButton) {
    sender.isSelected.toggle()
    if sender.isSelected == true {
        sender.setTitleColor(UIColor.clear, for: .normal)
    } else {
        sender.setTitleColor(UIColor.blue, for: .normal)
    }
}

答案 2 :(得分:0)

@IBAction func myButton(_ sender: UIButton) {
    if sender.currentTitle = "" {
        sender.setTitle("myTitle", for: .normal)
    } else {
        sender.setTitle("", for: .normal)
    }
}

答案 3 :(得分:-1)

override func viewDidLoad() {
    super.viewDidLoad()
    myButton.setTitle("myTitle", for: .normal)
    myButton.setTitle("", for: .selected)
}

@IBAction func myButtonClicked(_ sender: UIButton) {
    myButton.isSelected = !myButton.isSelected
}