0
我已經遍地搜索,找不到任何關於此:偏好複選框更改時運行代碼的方式?
我有一個複選框設置在首選項屏幕。我想在複選框被選中時彈出一個對話框,但是當複選框被選中時,我找不到一個被調用的方法。
我正在使用eclipse IDE。
任何人都可以幫助我嗎?
我已經遍地搜索,找不到任何關於此:偏好複選框更改時運行代碼的方式?
我有一個複選框設置在首選項屏幕。我想在複選框被選中時彈出一個對話框,但是當複選框被選中時,我找不到一個被調用的方法。
我正在使用eclipse IDE。
任何人都可以幫助我嗎?
checkboxbutton.setOnCheckedChangeListener(new OnCheckedChangeListener(){
public void onCheckedChanged(CompoundButton arg0, boolean isChecked){
if (isChecked){
CheckBox cb1 = (CheckBox) findViewById(R.id.check1);
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
cb1.setChecked(settings.getBoolean("MY_NAME",true));
String s1="OK";
AlertDialog.Builder ad=new AlertDialog.Builder(IPCamera.this);
ad.setMessage("CHECKBOX SET");
ad.setPositiveButton(s1, new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int which){
}
});
ad.show();
}
}
});
您可以使用setOnCheckedChangeListener
並覆蓋CompoundButton.onCheckedChanged(CompoundButton buttonView, boolean isChecked)
方法來顯示你的對話框
好吧,那是非常混亂的。我應該把這個放在偏好活動還是我的主要活動中?另外,我應該爲R.id.check1做些什麼?我的複選框有一個ID,但沒有被識別。 – 2012-01-02 09:55:44
如果你的ID沒有被識別,那麼你應該先清理你的項目。 R.java文件將創建所有資源的新實例,然後... bang ..它會接受你的id。將check1替換爲您的ID。對不起,我很抱歉:)匆忙回答。把這個放在首選項活動 – 2012-01-02 09:58:49
對,除了這一行出現錯誤外,所有的工作都是這樣的:'checkboxbutton.setOnCheckedChangeListener(new OnCheckedChangeListener()',錯誤在於checkboxbutton無法解析,並且OnCheckChangedListener無法解析爲類型。 – 2012-01-02 10:16:49