在简单列表视图中获取已检查的项目

时间:2013-05-06 19:30:58

标签: android android-listview

我有simplelist_item_multiple_choice和一个按钮的simplelistview(非自定义)。我想找出用户在点击按钮上检查的复选框。我使用下面的代码:

btn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
       ListView lv = MainActivity.this.getListView();
       SparseBooleanArray selectedItems = lv.getCheckedItemPositions();

       for (int i = 0; i < selectedItems.size(); i++) {
                    int selectedPosition = selectedItems.keyAt(i);
                    Toast.makeText(getApplicationContext(), selectedPosition+": checked", Toast.LENGTH_SHORT).show();
                }
             }  
        });
    }

问题:它显示所有项目是否已被点击。根据{{​​1}}的功能,它应该只返回选中的复选框。

暂时,我在内部使用了getCheckedItemPositions()循环,告诉我这个复选框是否被选中。但这种方式不正确,因为如果列表中有100个项目,那么我的循环将运行100次。

请帮帮我!!

0 个答案:

没有答案