• TV焦点实战总结


    建议 : 为了适配尽可能多的电视设备 , 推荐如下做法 :

    ① 设置可获取焦点 : 给 需要获取焦点的组件 , 统一添加 android:focusable=“true” 属性 ;

    ② 设置不可获取焦点 : 凡是 不需要获取焦点的组件 , 统一添加 android:focusable=“false” 属性 ;

    ③ 设置组件兼容 : 凡是涉及到 父容器 与 子组件 之间的焦点获取的情况 , 统一使用
    android:descendantFocusability 属性 ;

    参考学习资料:

    https://blog.csdn.net/qq_44203816/article/details/131207841
    http://www.taodudu.cc/news/show-3512378.html?action=onClick
    https://www.cnblogs.com/cps666/p/17339599.html

    默认焦点: https://blog.csdn.net/johnWcheung/article/details/76922352
    焦点乱跑: https://www.jianshu.com/p/5524a5c9311f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
    按键事件分发: https://www.codetd.com/article/15527758
    获焦后,背景出现重叠问题: https://blog.csdn.net/snail201211/article/details/84990892

    这个原因是动态设置背景的时机在判断默认背景之后,所以导致先绘制了一个默认背景,然后又绘制了自定义的背景,解决方案就是xml布局里面禁用默认背景:
    android:defaultFocusHighlightEnabled=“false”

    VerticalGridView第一行获取焦点后,再次按向上键,上方的控件获取不到焦点解决方案: https://blog.csdn.net/dongdengke123789/article/details/54427079

    AndroidTV中使用RecyclerView的notifyDataSetChanged()方法刷新列表后会造成焦点缺失,解决办法是改用notifyItemRangeChanged(0,5)方法刷新所有数据,0代表position(recyclerview的开始位置),5代表刷新后item的数量。

  • 相关阅读:
    乡村科技杂志乡村科技杂志社乡村科技编辑部2022年第20期目录
    “百度杯”CTF比赛 九月场,Web:SQL
    图文翻译-免费图文翻译-批量图文翻译软件
    (二)进制、原码、反码、补码、位运算符
    mybatis1:简介
    MAC和PHY的关系
    暑期JAVA学习(34)线程同步
    Linux之NFS服务器
    windows环境下node安装教程(超详细)
    基于BP/RBF神经网络的在线信道估计均衡算法matlab仿真
  • 原文地址:https://blog.csdn.net/u011835956/article/details/132709845