如何理解SparseBooleanArray
发表于:2025-11-17 作者:千家信息网编辑
千家信息网最后更新 2025年11月17日,这篇文章给大家介绍如何理解SparseBooleanArray,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。项目过程中,常常会遇到多选列表的问题。问题不麻烦,但似乎每一次的实现都
千家信息网最后更新 2025年11月17日如何理解SparseBooleanArray
这篇文章给大家介绍如何理解SparseBooleanArray,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
项目过程中,常常会遇到多选列表的问题。问题不麻烦,但似乎每一次的实现都不一样,或者说不规范吧。之前一直使用的HashMap
SparseBooleanArray是android提供的工具类,有人翻译成"稀疏数组"。是专门为手机这种内存资源稀缺的平台提供的 。根据其源代码,在数量不多的情况下,相比HashMap
public class MyAdapter extends ArrayAdapter{ private Context mContext; private List mData; private SparseBooleanArray selectList = new SparseBooleanArray(); MyAdapter(@NonNull Context context, @LayoutRes int resource, @NonNull List objects) { super(context, resource, objects); this.mContext = context; this.mData = objects; initSelectList(); } @NonNull @Override public View getView(final int position, @Nullable View convertView, @NonNull ViewGroup parent) { if (convertView == null){ convertView = LayoutInflater.from(mContext).inflate(R.layout.item_choice, parent, false); } TextView text = (TextView) convertView.findViewById(R.id.text); CheckBox box = (CheckBox) convertView.findViewById(R.id.checkbox); text.setText(getItem(position)); box.setChecked(selectList.get(position)); box.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { selectList.put(position, isChecked); } }); return convertView; } void initSelectList() {//全部取消选中 for (int i = 0; i < mData.size(); i++) { selectList.put(i, false); } notifyDataSetChanged(); } void checkAll(){//全选 for (int i = 0; i < mData.size(); i++) { selectList.put(i, true); } notifyDataSetChanged(); } void reverse(){//反选 for (int i = 0; i < mData.size(); i++) { if (selectList.get(i)){ selectList.put(i, false); }else{ selectList.put(i, true); } } notifyDataSetChanged(); } SparseBooleanArray getSelectedList(){ return selectList; }}
关于如何理解SparseBooleanArray就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
内容
情况
更多
知识
索引
问题
帮助
不错
稀疏
稀缺
浮躁
天时地利人和
二分法
人和
兴趣
内存
地利
地步
天时
小伙
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
电话的简写数据库学生表
python启动服务器
锡山区软件开发合同
深圳python软件开发公司
网络技术考试字体是红色
软件开发知识半衰期
数据库查询最后两位小数点
图片抠图软件开发原理
设置微软商店国内服务器
神奇宝贝服务器管理员
中国万芳论文数据库
数据库中的长度为0
pfcu软件开发
破天一剑无武功服务器
服务器什么配置的电脑好
网络安全法规定网络运营者开展
治理网络安全
云服务器ip访问不了
热带雨林网络技术
jsp页面插入数据库
汇丰高级软件开发工程师
网络安全法涉及个人信息条款
linux 数据库登陆
软经测试和软件开发相比
软件开发工程师在校实践
数据库技术与应用 题库
数据库技术及应用a卷
服务器bios 远程管理
数据库超类与子类的关系
服务器管理细则