android tv和普通的手机app区别就是,一个用遥控器操作,一个用手势操作
而tv最重点就是焦点,焦点框,这个我查了很多资料,关于tv的比较少,但是还是有的
焦点
android:focusableInTouchMode="true" android:focusable="true"
android:nextFocusRight="" android:nextFocusLeft="" android:nextFocusUp="" android:nextFocusDown=""
焦点框,有两种方式
一种是自定义view 获得焦点绘制框,失去焦点让这个框隐藏,这个是出现bug比较少,也是我比较喜欢和推荐的方式
@Override protected void onFocusChanged(boolean gainFocus, int direction, @Nullable Rect previouslyFocusedRect) { super.onFocusChanged(gainFocus, direction, previouslyFocusedRect); mAnimaUtils.setFocusChangeAnima(gainFocus, this); mBv.setVisibility(gainFocus ? VISIBLE : INVISIBLE); }
另外一种是自定义一个焦点框,让这个焦点框移动到获得焦点的view上,具体查看大神链接
https://github.com/FrozenFreeFall/Android-tv-widget
https://www.jianshu.com/p/a54e4f6a21ed