android的listview多选功能,Android ListView多选模式

本文介绍了Android中ListView的多种选择模式,包括CHOICE_MODE_NONE、CHOICE_MODE_SINGLE、CHOICE_MODE_MULTIPLE和CHOICE_MODE_MULTIPLE_MODAL,并详细讲解如何设置多选模式以及在XML和代码中实现。在多选状态下,选择状态存储在ListView控件中,列表Item需实现Checkable接口。最后,通过SparseBooleanArray获取选择的数据索引。
摘要由CSDN通过智能技术生成

交互与数据分离,在多选状态下不需要修改数据源,在最后确定的时候获取选择索引来确定选择的数据。

ListView模式

CHOICE_MODE_NONE:普通模式;

CHOICE_MODE_SINGLE:单选模式;

CHOICE_MODE_MULTIPLE:多选模式;

CHOICE_MODE_MULTIPLE_MODAL:多选模式(与ActionMode配合使用)。

设置方式

XML布局文件设置(多选模式设置):

android:layout_width="match_parent"

android:layout_height="match_parent"

android:choiceMode="multipleChoice"/>

代码设置:

listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);

选择

ListView多选状态是记录到ListView控件中,由其父类AbsListView实现。

列表Item最外层需要实现Checkable接口,比如CheckBox、CheckedTextView等控件。

如果需要使用容器类控件比如LinearLayout,可以重写控件,实现Checkable接口。

比如:

public class CheckableLinearLayout extends LinearLayout implements Checkable {

private b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值