ListView OnItemClickListener无作用
来源:互联网 发布:实战nginx 编辑:程序博客网 时间:2024/06/08 14:14
最近在做音乐播放器,想仿天天动听在歌曲名字前面加上一个心形的图片,点击图片,即可以变成喜欢的歌曲。在实现的过程中,使用的控件是ImageButton(因为考虑到点击功能,其实也可以直接使用ImageView)。但是最后通过自定义的适配器把所有歌曲都显示出来后,发现ListView的点击功能无作用,根本不会运行OnItemClick,即使代码中强制把焦点给ListView也不行。最后才发现是ImageButton搞得鬼(若是换成ImageView就不会有问题)。
使用ViewGroup中的一个属性android:descendantFocusability来解决此问题。
该属性是当一个View获取焦点的时候,定义ViewGroup和它子控件两者的关系。android:descendantFocusability="blocksDescendants"
beforeDescendants--------ViewGroup优先 0
afterDescendants----------子控件不需要的时候才给ViewGroup 1
blocksDescendants--------ViewGroup覆盖子类控件而直接获得焦点 2
通常用到第三种,在Item布局的根布局上加android:descendantFocusability="blocksDescendants"就可以了。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:descendantFocusability="blocksDescendants" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="60dp" android:orientation="horizontal" > <LinearLayout android:layout_width="wrap_content" android:focusable="false" android:layout_height="50dp" > <ImageButton android:id="@+id/fav_music_button" android:layout_width="32dp" android:layout_height="32dp" android:layout_gravity="center" android:paddingLeft="6dp" android:background="@drawable/heart" /> </LinearLayout> </LinearLayout></LinearLayout>
0 0
- ListView OnItemClickListener无作用
- listview OnItemClickListener无反应的可能问题
- 解决ListView的onItemClickListener无响应的问题
- ListView 、GridView的OnItemClickListener无响应解决办法总结
- 解释:ListView适配Button、CheckBox时OnItemClickListener无响应
- ListView 之 OnItemClickListener
- ListView中AdapterView.OnItemClickListener
- ListView OnItemClickListener点击事件
- 在ListView的item项里使用CheckBox或者Button时,OnItemClickListener无响应的问题
- 在ListView的item项里使用CheckBox或者Button时,OnItemClickListener无响应的问题
- Android ListView的OnItemClickListener详解
- ListView OnItemClickListener position 索引不正确
- Android ListView的OnItemClickListener详解
- Android ListView的OnItemClickListener详解
- Android ListView的OnItemClickListener详解
- Listview+checkbox,无法响应onItemClickListener
- Android ListView的OnItemClickListener详解
- ListView的onItemClickListener不起作用解决办法
- SuSE Linux安装多MySQL实例
- 90后年轻董事长VS范冰冰,“中国最年轻的时尚领袖年度人物”花落谁家?
- g++编译命令选项
- 数组之赋值
- android 软键盘隐藏
- ListView OnItemClickListener无作用
- uc/os-ii删除任务
- 今天接到电话,是本地公安打来的?
- using的一点点认识
- Qt插件制作笔记part1
- java压缩文件夹或文件
- Event order
- C#中String.Trim方法
- 怎样设置UITableView的cell之间的距离