android listview 多选
时间: 2023-09-16 11:14:52 浏览: 223
在 Android 中,可以使用 ListView 来显示列表数据,而多选则可以通过设置 ListView 的选择模式来实现。以下是实现 ListView 多选的步骤:
1. 设置 ListView 的选择模式为多选:
```java
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
```
2. 创建适配器并设置到 ListView 上:
```java
ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_multiple_choice, data);
listView.setAdapter(adapter);
```
3. 处理 ListView 的选择事件:
```java
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
SparseBooleanArray checkedItems = listView.getCheckedItemPositions();
for (int i = 0; i < checkedItems.size(); i++) {
int pos = checkedItems.keyAt(i);
if (checkedItems.get(pos)) {
// 选中状态
} else {
// 非选中状态
}
}
}
});
```
在处理 ListView 的选择事件时,可以通过 getCheckedItemPositions() 方法获取当前选中的项,并通过 SparseBooleanArray 对象来表示每个项的选择状态。其中,keyAt() 方法用于获取 SparseBooleanArray 中指定位置的 key,get() 方法则用于获取指定位置的 value。通过这些方法,可以实现 ListView 的多选功能。
阅读全文