1

チェックボックスがオンまたはオフになったらすぐに、チェックボックスの現在のステータスを取得したい。それに基づいて、トースト メッセージを表示します。これまでの私のコードは次のとおりです。

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" />
4

1 に答える 1

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();
        }  
    }
});
于 2012-05-05T13:47:06.137 に答える