ListView与item中控件焦点抢占及错位问题
来源:互联网 发布:外卖哪个软件便宜 编辑:程序博客网 时间:2024/05/19 14:55
焦点抢占
通常在LitView的item里面有可以点击的控件时,这个时候ListView的item将会失去焦点不能点击。
这时有两种解决办法分别如下:
方法一:
就是在该item中要点击的控件上设置android:focusable=”false”这个属性;
方法二:
就是在该item父控件也就是最外层控件上设置android:descendantFocusability=”blocksDescendants”.
错位问题
通过上面两个方法就可以解决item与item中控件焦点的问题。但这时候你会发现新的问题,那就是list一屏展示不下时,如当点击勾选一个CheckBox 时,再滑到另一屏时,你会发现另一屏的也有被勾选上了。所有的CheckBox全错位了,一下感觉全乱套了,这时也有两种方法可以解决。
方法一:
就是在实体Bean对象中添加一个boolean属性来纪录当前状态,及实现get、set方法;完成后再到适配器Adapter的getView中代码实现如下:
...... final CheckBox checkBox = holder.getView(R.id.id_cb); checkBox.setChecked(bean.isCheck()); checkBox.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { bean.setCheck(checkBox.isChecked()); } }); ......
方法二:
就是在把当前状态保存到一个集合里面,代码如下:
...... List<Integer> mPos = new ArrayList<>(); final CheckBox checkBox = holder.getView(R.id.id_cb);// checkBox.setChecked(bean.isCheck()); checkBox.setChecked(false); if (mPos.contains(position)){ checkBox.setChecked(true); } checkBox.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) {// bean.setCheck(checkBox.isChecked()); if (checkBox.isClickable()){ mPos.add(holder.position); }else { mPos.remove((Integer) holder.position); } } }); ......
0 0
- ListView与item中控件焦点抢占及错位问题
- android listview 中item 子控件抢占焦点问题
- listView中Item控件抢占焦点
- android中关于在ListView的子item中有控件抢占ListView的焦点问题
- Listview中item与button类控件获取焦点问题
- 解决listview中item抢占焦点
- item控件抢占焦点的问题
- 万能适配器 item中控件抢占焦点
- ListView Item焦点与子控件焦点问题
- ListView子控件抢占焦点的问题
- listview 中的控件抢占焦点问题
- listView中Item不可点击的原因是内部有一些抢占焦点的控件
- listView的Item控件抢占焦点的解决办法
- Android ListView Item与子控件焦点问题
- ListView中item与控件抢夺焦点解决办法
- ListView中item与控件抢夺焦点的那些事
- 关于listView的item失去焦点不能点击 Item中包含Button 导致抢占焦点
- 关于listView的item失去焦点不能点击 Item中包含Button 导致抢占焦点
- 杭电 1181 变形课
- uva 1225 Dight Counting(数数字)
- maximal-rectangle
- 经典SQL语句大全
- hdu1520 Anniversary party(树型dp)
- ListView与item中控件焦点抢占及错位问题
- Linux系列之安装jdk(二)
- 适应多种数据库的db helper代码
- android build path contains duplicate entry:'src' for project XXX
- POJ 3126 Prime Path(素数打表+bfs)
- Poj 3204 Ikki's Story I - Road Reconstruction【最大流Dinic+可行方案边数统计】
- sql 判断 字符串是否存在于字符串中 字符 出现 次数
- 缩减像素采样 技术
- Struts2访问Web元素----马士兵