2013-07-27 39 views
0

我的列表查看出現問題。基本上由從數據庫中搜索生成的列表組成,但是當加載列表時,只檢測到第一個複選框爲已選中或未選中,忽略其餘部分。爲什麼我的listview只檢測到第一個複選框?

的代碼是這樣的:

public void AnyadirProdLista() { 
    // TODO Auto-generated method stub 
    ListView lista = (ListView) view.findViewById(R.id.ListaProds); 
    CheckBox check = (CheckBox) view.findViewById(R.id.checkLista); 
    int contador = lista.getCount(); 
    for (int i = 0; i < contador; i++){ 
     if (check.isChecked()){ 
      Toast.makeText(getActivity(), "a" + i, Toast.LENGTH_LONG).show(); 
     } 
    } 
} 

當我做到這一點,並單擊激活此方法的按鈕,只有列表的第一個複選框(在列表中的位置0項),使工作敬酒和做所有的循環,但其他複選框不做任何事。

我在視圖中做了focusable false複選框,如果有人能幫助我,我不會不知道該做什麼,我會非常感激。

+0

這是java的?如果是這樣,你應該添加一個java標籤。 – lurker

+0

不,是android,對不起,我忘了標籤,ty –

回答

0
CheckBox check = (CheckBox) view.findViewById(R.id.checkLista); 

你得到一個複選框,你只檢查上面

if (check.isChecked()){ 
     Toast.makeText(getActivity(), "a" + i, Toast.LENGTH_LONG).show(); 
} 

得到了一個,而你遍歷把你的列表中,您應該覆蓋「檢查」與其他複選框

+0

然後我應該「創建」一個檢查我列表上的每個人元素? –

+0

列表中的每個元素是否都有自己的「複選框」?或者他們是否都「共享」一個複選框,例如。複選框== true =>輸出所有元素? – Alex

+0

不,他們不共享複選框,所有元素都有自己的複選框,也許這是問題所在? –

相關問題