
蜗牛TV App开发笔记
文章平均质量分 92
专栏的目标是看完这个,就可以轻松解决我们日常开发TV app中遇到的问题。有问题欢迎大家指出,共同进步!
圆周率X
换个视角看问题
展开
-
从源码角度分析:Andriod系统KeyEvent分发流程
1、简介焦点查找源码分析是基于Android7.0。写了一个自定义的CustomButton继承Button如下:public class CustomButton extends Button { private static final String TAG = "CustomButton"; public CustomButton(Context context) { super(context); } public CustomButton(Context context, At原创 2020-11-15 10:57:37 · 484 阅读 · 1 评论 -
持续更新:详细总结 TV开发常用的方法和遇到的问题解决方法
1、开发1.1、方法基本方法setFocusable()/android:focusable设置View是否可以聚焦(注意:设置了View不一定可以拿到焦点 具体看这篇深入理解:View和ViewGroup如何才能获取焦点)boolean hasFocus()如果是ViewGroup:自身有焦点或者其子View有焦点返回true,其他返回falseView getFocusedChild()请求焦点boolean requestFocus()请求焦点,方向默认往下boolea原创 2020-11-08 21:13:21 · 2239 阅读 · 5 评论 -
TV开发高频属性:深入使用 clipChildren和clipToPadding
简介clipChildren和clipToPadding是ViewGroup的方法。clipChildren的作用是设置ViewGroup的子View的绘制是否可以超出子View实际的大小区域。默认值是true,不允许超出子View实际的大小区域。clipToPadding的作用是ViewGroup的子View的绘制区域是否可以使用ViewGroup设置的padding区域。默认值是true,不允许使用ViewGroup的padding区域。常见的应用场景有:View动画放大时View超出实际大原创 2020-10-21 22:19:47 · 993 阅读 · 1 评论 -
深入理解:View和ViewGroup如何才能获取焦点
我们知道View如果要获取到焦点一定是调用requestFocus方法,那我们看看requestFocus方法public final boolean requestFocus() { return requestFocus(View.FOCUS_DOWN); }requestFocus中调用了requestFocus(View.FOCUS_DOWN) 我们接着看p...原创 2020-11-03 08:23:45 · 1247 阅读 · 0 评论 -
TV开发高频属性:duplicateParentState 和 descendantFocusability使用
这篇介绍一下 duplicateParentState和descendantFocusability 这两个属性在TV开发中的使用duplicateParentState先看下官方说明: Enables or disables the duplication of the parent's state into this view. When duplication is enab...原创 2020-11-10 07:44:35 · 1089 阅读 · 0 评论 -
Android dispatchKeyEvent事件分发详解,简单易懂
本文逻辑流程图基于Android 8.0,其他版本可能略有不同但是主体流程是一样的。前言KeyEvent的分发是从Activity->ViewGroup->View。KeyEvent的组成KeyEvent的主要包含两个部分:action和键值actionAction_up或者Action_down代表是按下还是抬起键值比如数字键等KeyEvent常用方法- ge...原创 2020-11-09 21:15:49 · 11250 阅读 · 0 评论