【问题标题】:RadioButton behaving in unpredictable wayRadioButton 行为不可预测
【发布时间】:2013-02-14 16:53:12
【问题描述】:

我有两个必须相互关联的RadioGroups。当我检查第一组上的按钮时,我需要禁用另一组上的相应按钮,如果已选中,也应取消选中。

我尝试通过在单击第一组中的按钮时使用相应按钮上的RadioButton.setEnabled(false)RadioButton.setChecked(false)(如果它也被选中)来实现此目的。

但是在这些操作之后,当我使用RadioGroup.getCheckedRadioButtonId() 时,它没有按预期返回-1 (here),但它仍然返回我取消选中和禁用的按钮的 ID。

【问题讨论】:

    标签: android android-button


    【解决方案1】:

    我找到了一个使用RadioGroup.clearCheck() 的解决方案,而不是手动取消选中我想要的按钮,但我仍然想知道为什么 Android 会这样。 我的意思是,为什么有一个名为 setChecked() 的方法,如果它似乎没有按应有的方式工作,至少在将 false 参数传递给它时?

    【讨论】:

    • 如果不确切了解您的操作方式/位置,很难说。只要您了解setEnabled(false) 禁用按钮并且不更改checked 参数,这应该按照我理解的方式工作。
    • 我知道setEnabled(false) 不会取消选中按钮,这就是为什么我打电话给setChecked(false),应该取消选中它。
    • 好吧,我以为你可能知道这一点,但这是我或可能任何人在不知道你是如何做的情况下唯一能提供的。就您如何称呼它或在哪里而言,您可能缺少一些东西
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-09
    • 2019-06-14
    • 2015-03-19
    • 2012-02-14
    • 1970-01-01
    • 1970-01-01
    • 2016-09-14
    相关资源
    最近更新 更多