1
爲什麼在啓動此適配器的活動時onChekedChanged事件觸發?如何避免這種情況?onCheckedChanged
class ScheduleAdapter extends BaseAdapter {
SPMMainActivity context;
LayoutInflater inflater;
ArrayList<Action> actions;
OnCheckedChangeListener myCheckChangList = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
SPMManager.getSPMManager().setEnabled((Integer)buttonView.getTag() , isChecked);
Log.d("debug","onChecked...");
context.setNextAction();
SPMManager.getSPMManager().update();
}
};
...
UPD:解決方案是使用的onClick代替
private OnClickListener checkbox_click_listener = new OnClickListener(){
public void onClick(View v) {
CheckBox c = (CheckBox) v ;
SPMManager.getSPMManager().setEnabled((Integer)v.getTag() , c.isChecked());
Log.d("onchecked","OnChecked changed");
context.setNextAction();
SPMManager.getSPMManager().update();
}
};
它沒有幫助。 onCheckedChanged仍然會在活動啓動或恢復時調用 – Hemul
,因爲'isFirst'的默認值必須是'false'而不是'true',我沒有感覺就犯了一個錯誤。 –