0

我试图找出自定义列表视图中选定行的总数。如果项目(行)数超过 2 则我们无法再次单击列表视图。这里我使用自定义清单(多选)

4

4 回答 4

1

有什么问题listView.getCheckedItemCount()

于 2013-08-28T07:44:37.353 回答
1
          lvMain.setOnItemClickListener(new OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> parent, final View view, int position, long   id) 
        {
        int len = lvMain.getCount();
        SparseBooleanArray checked = lvMain.getCheckedItemPositions();
        for (int i = 1; i < len; i++){
        if (checked.get(i)) {
            count++;


               /* do whatever you want with the checked item */
           }

        }
        if(count>2)
        {
            /* do whatever you want with the checked item count more than one x value*/
            lvMain.setSelected(false);
            count=1;
        }
    }       

});
于 2013-09-02T16:24:18.150 回答
0

我认为您正在尝试计算多个 listView 中选定行的总数。

for(i=0; listCount; i++) {
    if(mListView.isItemChecked(i)){

    }
    else {

    }
}
于 2013-08-28T07:55:09.800 回答
0

否则,您可以尝试将复选框和显示在一行中的其他元素(TextView在我的示例中使用过)存储在调用HashMap重写getView方法时,然后计算遍历检查的元素数量Map

Iterator<Entry<TextView, CheckBox>> it = listCheck.entrySet().iterator();
    int i = 0;
    while (it.hasNext()) {
        Entry<TextView, CheckBox> entry = it.next();
        if (entry.getValue().isChecked()) 
                i++;
    }   
    return i;
于 2013-08-28T08:10:21.917 回答