listView计算所选行的数量

时间:2013-08-28 07:42:24

标签: android listview

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

4 个答案:

答案 0 :(得分:1)

listView.getCheckedItemCount()有什么问题?

答案 1 :(得分: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;
        }
    }       

});

答案 2 :(得分:0)

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

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

    }
    else {

    }
}

答案 3 :(得分: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;