我正在开发纸牌游戏应用,并且当我们用完dealThreeMore
时,我将sender
game.cards
设置为禁用。
当我重置游戏时,我不知道如何访问此发件人按钮以重新启用它。有没有办法在没有用户实际按下此按钮且在dealThreeMore
func之外的情况下访问它?
@IBAction func dealThreeMore(_ sender: UIButton) {
// have a match and cards available to deal
if !matched.isEmpty && !game.cards.isEmpty {
clearAndDeal()
} else {
// deal three more cards
//TODO: make sure no set exists before allow dealing more?
deal()
}
// disable if we run out of cards
if game.cards.isEmpty {
disable(button: sender)
resetInfoLabel()
}
}
private func disable(button sender: UIButton){
sender.isEnabled = false
sender.backgroundColor = #colorLiteral(red: 0.8039215803, green: 0.8039215803, blue: 0.8039215803, alpha: 0.5160798373)
}
答案 0 :(得分:2)
您可以创建@IBOutlet
属性以保留对按钮的引用。
@IBoutlet weak var mMyButton : UIButton?
然后在storyboard / xib文件中创建连接,您就可以使用mMyButton.isSelected = false