Android 在机顶盒开发过程当中如何禁止listview的item项获得焦点,而让item的子控件获得焦点
来源:互联网 发布:linux mint中文输入法 编辑:程序博客网 时间:2024/05/23 10:52
转载自:http://blog.csdn.net/u014608640/article/details/51792203
在机顶盒开发中会遇到这样的需求,listview上的item项中有一张图片(item里的ImageView子控件),当按下机顶盒遥控器的方向键时(例如方向键的下键),让listview的某一个item项里面的图片(如下图左边的ImageView)获得焦点,而不是让item自身获得焦点(下图右)。
默认的情况下,是listview的item自身获得了焦点(如上图右),也就是说listview的item获得焦点后,没有传递给子控件或者子控件默认不能获得焦点。
这时候我们可能会想到在布局文件里设置listview的descendantFocusability属性(焦点传递性):android:descendantFocusability="afterDescendants"
然而无论设置其值为afterDescendants还是beforeDescendants或blocksDescendants都没有达到想要的效果。
接下来我们可能会继续寻找listview是否有以item为关键字的相关属性,结果很遗憾,找遍了所有属性都没有item相关的关键字。
其实与item相关的设置在配置文件里面虽然没有,但是代码里还是有的,如下:
listView.setItemsCanFocus(true); //设置item项的子控件能够获得焦点(默认为false,即默认item项的子空间是不能获得焦点的)
通过这一行代码即可实现以上需求,另外,关于焦点的传递大家有兴趣的话可以自行查看源码。
补充:如果没有出现左图的获得焦点高亮效果,可能有以下原因:
1,ImageView默认不能获得焦点,应该设置属性为:android:focusable="true" (如果是ImageButton或Button等则不需要设置,他们默认是可以获得焦点的)
2,没有为该ImageView设置自定义drawable图片的的selector(该ImageView其实已经获得焦点了,只是没有看出来而已)。
阅读全文
0 0
- Android 在机顶盒开发过程当中如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- Android 在机顶盒开发过程当中如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- 如何禁止listview的item项获得焦点,而让子控件获得焦点
- [Android开发] 解决listview 的item无法获得焦点
- Android 机顶盒开发过程中Listview指定item获取焦点
- Android 机顶盒开发过程中Listview指定item获取焦点
- android ListView的item与其子控件的焦点问题
- android ListView的item与其子控件的焦点问题
- listView中的item获得焦点
- android中关于在ListView的子item中有控件抢占ListView的焦点问题
- android开发 gridview的item与子控件焦点问题
- [Android机顶盒]GridView子Item焦点问题
- [Android机顶盒]GridView子Item焦点问题
- 备份map类型
- 数据结构 斐波那契查找
- R语言svm支持向量机分类与参数优化
- 18muduo_base库源码分析(九)
- 微信小程序开发(三)--交互反馈
- Android 在机顶盒开发过程当中如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- c语言柔性数组实现并用其求Fibonacci数列前n项,不足之处请见谅并回复评价
- C++对缓冲区的理解
- Linux系统的firewalld服务
- [NOIP模拟赛]TPS
- POJ-2406 Power Strings(KMP求重复子串出现的最大次数)
- 【单片机笔记】51内核软件延时和串口的巧妙使用方法
- sdk、jdk、jre的区别
- LinkedList----- List 61. Rotate List