1
我有一個8複選框的按鈕,我想當我點擊按鈕一段代碼運行例如情況1在此代碼中顯示在CHK1(note.done1)上打勾第二次,當我點擊按鈕,我的應用程序識別chk1被檢查,現在檢查chk2(note.done2),也爲另外6個CheckBoxs。單擊一個不同時間的按鈕
但這段代碼是錯誤的,因爲當我點擊按鈕時,chk1和chk3和chk5都是true.also我試着在其他情況下如果和Sharedpreferences和數組。
我不能使用梗概()方法,因爲我使用listview與1000(在更少)item.just我可以使用note.done在哪裏鏈接到每個項目中的複選框.i可以使用數組鏈接到每個複選框和sqlite呢!
所以任何人都可以幫助我嗎?
btnOk.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
switch (G.result_s1[position]) {
case 0: {
note.done1 = true;
note.c = Color.RED;
G.database_s.execSQL("UPDATE mystate SET s1='1' WHERE s_id=" + (position + 1));
G.result_s1[position] = 1;
//AdapterNote.img.setBackgroundColor(Color.CYAN);
}
break;
case 1:
{
note.done2 = true;
note.c = Color.GREEN;
G.database_s.execSQL("UPDATE mystate SET s2='1' WHERE s_id=" + (position + 1));
G.result_s2[position] = 1;
}
break;
}
switch (G.result_s3[position]) {
case 0: {
note.done3 = true;
note.c = Color.MAGENTA;
G.database_s.execSQL("UPDATE mystate SET s3='1' WHERE s_id=" + (position + 1));
G.result_s3[position] = 1;
}
break;
case 1: {
note.done4 = true;
note.c = Color.YELLOW;
G.database_s.execSQL("UPDATE mystate SET s4='1' WHERE s_id=" + (position + 1));
G.result_s4[position] = 1;
}
break;
}
dialog.dismiss();
finish();
}
});
,因爲我使用的ListView 1000我不能用器isChecked()方法item.just我可以使用note.done其中鏈接到每個項目checkboxs 。 – alireza71
您可以嘗試檢入數據庫,該數據庫是狀態爲0的第一個複選框。 或者您可以設置一個全局變量,其中點擊次數爲按鈕。 –