选中或取消选中后立即获取复选框状态

时间:2012-05-05 13:42:13

标签: java android

我希望在选中或取消选中后立即获取复选框的当前状态。基于那个显示Toast消息。到目前为止,这是我的代码。

SharedPreferences getPrefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    boolean Alarm = getPrefs.getBoolean("cbAlarm", true);
    if(Alarm == true) {
        Toast.makeText(this, "Checked", Toast.LENGTH_LONG).show();
    } else if(Alarm == false) {
        Toast.makeText(this, "UnChecked", Toast.LENGTH_LONG).show();
    }

我怎样才能做到这一点。请帮忙。

修改 这是我的xml文件

<CheckBoxPreference
    android:title="Enable/Disable Alarm"
    android:defaultValue="true"
    android:key="cbAlarm"
    android:summary="Enable or disable alarm" />

1 个答案:

答案 0 :(得分:1)

只需实现OnCheckedChangeListener:

CheckBox myCheckBox = (CheckBox)  findViewById(R.id.my_checkbox);

myCheckBox.setOnCheckedChangeListener(new OnCheckedChangeListener(){
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked){
        if (isChecked){
             Toast.makeText(this, "Checked", Toast.LENGTH_LONG).show();
        }else{
             Toast.makeText(this, "UnChecked", Toast.LENGTH_LONG).show();
        }  
    }
});