在Android应用开发中,列表多选编辑功能是收藏、文件管理等场景的常见需求。本文介绍如何通过封装BaseMultipleChoiceAdapter基类,快速实现全选、单选和批量操作功能。

该适配器基类通过维护两个核心数据结构:数据列表lists和选中状态数组marks,简化了多选功能的开发流程。开发者只需关注UI展示和数据绑定,选中状态的维护完全由基类处理。
public abstract class BaseMultipleChoiceAdapter<B extends ViewBinding, T> extends RecyclerView.Adapter {
// 核心数据结构和关键方法实现...
}
DataCheckUtil提供多种数据判空方法,确保操作安全性。
public class DataCheckUtil {
// 多种数据校验方法实现...
}
通过CollectActivity和CollectAdapter演示具体应用:
id="@+id/tv_gl_right"/>
id="@+id/tv_cancel_right"/>
id="@+id/ll_check">
src="@drawable/selector_check_yyts2"/>
id="@+id/fl_delete">
text="删除"/>
CollectActivity处理编辑状态切换和批量删除:
public class CollectActivity extends BaseBingActivity {
// 初始化适配器和器
collectAdapter.setOnMultipleChoiceDataListener(new OnMultipleChoiceDataListener() {
// 处理全选/部分选中状态变化
});
// 点击事件处理
public void onClick(View view) {
// 管理/取消/全选/删除等操作
}
}
CollectAdapter继承BaseMultipleChoiceAdapter,专注UI展示:
public class CollectAdapter extends BaseMultipleChoiceAdapter {
// 实现数据绑定和选中状态UI更新
}
id="@+id/iv_check"/>
id="@+id/tv_sn"/>
id="@+id/tv_name"/>
通过封装BaseMultipleChoiceAdapter,开发者可以快速实现复杂的列表多选功能,大幅提升开发效率。文中的完整代码示例可直接应用于实际项目,帮助构建更强大的Android应用。