如何取消选择同一IBAction中的(取消突出显示)按钮

问题描述 投票:0回答:1

我在我的项目中使用3个UIbutton,这3个按钮共享相同的IBAction,并且我使用了Switch控制器。使用Sender提供的标签,使用Sender.isSelected = True突出显示发送者按钮。

我想做的是代替在每种情况下都不调用其他2个按钮来取消选择它们,我想知道是否有一种方法可以取消选择共享同一IBAction的其他按钮而不必在每种情况下都调用其他按钮。

我当前的代码:

@IBAction func tipChanged(_ sender: UIButton) { 

        switch sender.tag {
        case 0:
            tenPctButton.isSelected = false
            twentyPctButton.isSelected = false
            sender.isSelected = true

        case 10:
            zeroPctButton.isSelected = false
            twentyPctButton.isSelected = false
            sender.isSelected = true

        case 20:
            tenPctButton.isSelected = false
            zeroPctButton.isSelected = false
            sender.isSelected = true
     }
}
swift xcode uibutton switch-statement ibaction
1个回答
0
投票

尝试一下,可能对您有帮助

  for view in self.view.subviews as [UIView] {
        if let btn = view as? UIButton {
             //here you can check your buttons tag and perform opration
        }
    }
© www.soinside.com 2019 - 2024. All rights reserved.