解决列表 (ListView GrifView RecyclerView )结合CheckBox实现列表选择的的问题
来源:互联网 发布:郑云灿的淘宝店 编辑:程序博客网 时间:2024/05/22 07:41
</pre><pre code_snippet_id="1651469" snippet_file_name="blog_20160418_2_235831" name="code" class="html"><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> 实现思路:由于列表类都是需要重复使用Item布局,所以这里不要监听CheckBox的CheckChange事件,不然问题会变得很复杂。只需要监听列表的单击事件,把点击事件</span>
绕过CheckBox传递到Item,步骤1、2的设置就是起到这种效果。CheckBox只是起到显示的作用,它的Check改变监听事件这里不会用到。接着通过监听Item的单击事件设置CheckBox是否选中,用setChecked
1、确保Item的布局有添加这个属性
android:descendantFocusability="blocksDescendants"
2、确保CheckBox添加这个属性
android:clickable="false"
3、处理Item的单击事件
(1)RecyclerView处理方式
class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener { CheckBox cbTab; View view; public ViewHolder(View itemView, int viewType) { super(itemView); this.view = itemView; cbTab = (CheckBox) itemView.findViewById(R.id.cb_tab); view.setOnClickListener(this); } @Override public void onClick(View view) { int position=getAdapterPosition(); if (mTagList.get(position).isChecked()) { mTagList.get(position).setChecked(false); cbTab.setChecked(false); } else { mTagList.get(position).setChecked(true); cbTab.setChecked(true); } } }
(2)ListView或GridView的处理方式
gvTag.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { CheckBox cbTab= (CheckBox) view.findViewById(R.id.cb_tab); if (mTagList.get(i).isChecked()) { mTagList.get(i).setChecked(false); cbTab.setChecked(false); } else { mTagList.get(i).setChecked(true); cbTab.setChecked(true); } } });
1 0
- 解决列表 (ListView GrifView RecyclerView )结合CheckBox实现列表选择的的问题
- RecyclerView+CheckBox实现列表数据选择操作
- Glide结合Recyclerview(Listview)实现列表滑动的时候图片不加载,滑动停止的时候加载
- 【Android】Glide结合Recyclerview(也适用于Listview)实现列表滑动的时候图片不加载,滑动停止的时候加载(已修正Listview部分以及排版)
- Glide结合Recyclerview(也适用于Listview)实现列表滑动的时候图片不加载,滑动停止的时候加载(已修正Listview部分以及排版)
- RecyclerView替代Listview,实现滚动列表的显示
- RecyclerView的初步使用(1)----代替ListView实现图片列表
- ListView,RecyclerView等列表中实现分层的方法
- RecyclerView、ListView实现单选列表的优雅之路
- RecyclerView、ListView实现单选列表的优雅之路
- RecyclerView、ListView实现单选列表的优雅之路.
- 经验总结-RecyclerView列表中获取每个item中已经选择的CheckBox值
- RecyclerView列表组件(用于替换传统的ListView组件)
- Android开发之ListView,加入CheckBox(复选框),实现选择列表
- RecyclerView+CheckBox 实现横向的图片选择
- gridview、listview适配器布局中带有checkbox实现的列表 checkbox只能有一项选中
- ListView嵌套CheckBox (解决滑动时重复选择的问题)
- RecyclerView和SwipeRefreshLayout结合实现列表的上拉加载下拉刷新
- Andorid 反编译App
- android背景选择器selector用法汇总
- java常用同步工具类
- 使用Java 导入Zip文件遇到中文命名乱码问题
- 玩味AndroidStudio的NewProject
- 解决列表 (ListView GrifView RecyclerView )结合CheckBox实现列表选择的的问题
- 我的博客
- 全局最小割模板 poj2914
- 无线传感网实验箱
- Spring 实现远程访问详解——rmi
- http块指令解析以及存储
- 如何通俗的解释计算机是如何实现1+1=2计算的?
- uva10534(最长递增子序列的算法变形 复杂度较低)
- 网易2016研发工程师编程题