我希望在选中或取消选中后立即获取复选框的当前状态。基于那个显示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" />
答案 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();
}
}
});