ToggleButton isChecked vs isActivated - Android

时间:2012-08-24 04:55:27

标签: android togglebutton

我正在尝试查看ToggleButton小部件的哪种方法用于检查它是否已切换为“on”或“off”,如果它是isChecked()isActivated()

两者有什么区别?

3 个答案:

答案 0 :(得分:3)

使用isChecked()进行开启和关闭

if (isChecked()) {
        // The toggle is enabled  ON state
    } else {
        // The toggle is disabled  OFF state
    }

据我所知,切换按钮没有isActivated()方法,但view是活动与否。

答案 1 :(得分:2)

文档中的差异很明显:

public boolean isActivated ()

是View方法,负责提供基本的View状态。 Here清楚地描述了激活在Android术语中的含义。

另一方面,

public boolean isChecked ()

是另一个实体 - CompoundButton的更高级别“属性”并提供其状态 - 是开启还是关闭。

答案 2 :(得分:2)

View.setActivated()在JavaDoc中说,激活状态与CheckBoxToggleButton无关,但是通过某种选择状态,通用View可以是在ListView中。

开发商甚至为这种混乱道歉:

  嗯,是的,我们对这里的术语感到非常抱歉

isActivated()也仅适用于API级别> 11。

isChecked()来自CompoundViewToggleButtonCheckBox都来自{{1}}。这是您要检查的状态。它适用于所有API级别。