首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >选择此选项时,UIButton未正确响应

选择此选项时,UIButton未正确响应
EN

Stack Overflow用户
提问于 2018-06-19 22:31:36
回答 1查看 71关注 0票数 0

我创建了一个有四个按钮的视图控制器。在每个按钮上,一个复选标记的图像被放在按钮上,但在视图加载时隐藏。选择按钮后,复选标记应显示在该按钮上,以通知用户该选择是由系统进行的。如果用户在屏幕上选择了一个不同的按钮,我希望原来的按钮复选标记消失,而复选标记出现在新的选择上。

当我运行软件并加载视图时,一切都正常工作。问题出在我选择了第一个按钮之后。当我在视图加载后第一次单击按钮时,复选标记将出现在该视图上。一旦我尝试选择第二个按钮,我就无法选择它,并且复选标记停留在所选的第一个按钮上。

此函数的代码如下所示:

代码语言:javascript
复制
@IBAction func nomineeSelected(_ sender: UIButton) {
        if sender == optionA {
          checkboxA.hideBox = false
          checkboxA.on = true
          checkboxB.isHidden = true
          checkBoxC.isHidden = true
          checkBoxD.isHidden = true

        } else if sender == optionB {
            checkboxB.hideBox = false
            checkboxB.on = true
            checkboxA.isHidden = true
            checkBoxC.isHidden = true
            checkBoxD.isHidden = true
            checkBoxD.isHidden = true
        } else if sender == optionC {
            checkBoxC.hideBox = false
            checkBoxC.on = true
            checkboxA.isHidden = true
            checkboxB.isHidden = true
            checkBoxD.isHidden = true
        } else  {
            checkBoxD.hideBox = false
            checkBoxD.on = true
            checkboxA.isHidden = true
            checkboxB.isHidden = true
            checkBoxC.isHidden = true

        }
    }
EN

回答 1

Stack Overflow用户

发布于 2018-06-20 03:35:50

使用===操作符而不是==来测试两个对象引用是否都引用相同的对象实例。

像这样的if sender === optionA {

Read more about Operators in swift

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50930929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档