扯淡
在Android TV开发中,最常处理的事情就是焦点的控制了,就像手机APP开发中的触摸事件的处理一样。但两者的处理有很大的区别,手机上是用手指触摸,可以随意点击任意的位置。而TV主要是通过遥控器上下左右移动焦点来操作,下一个焦点在哪,并不是随意的,都是由系统默认的规则或我们的设置来控制的。系统默认的规则是,将焦点交给在该方向上,离当前焦点view最近的,且是可获得焦点的View。
下面是我们常用到的焦点相关方法:
焦点监听
//全局焦点监听
view.viewTreeObserver.addOnGlobalFocusChangeListener(object :ViewTreeObserver.OnGlobalFocusChangeListener{
override fun onGlobalFocusChanged(oldFocus: View?, newFocus: View?) {
//TODO
}
})
//view的焦点监听
view.setOnFocusChangeListener(object :View.OnFocusChangeListener{
override fun onFocusChange(v: View?, hasFocus: Boolean) {
//TODO

393

被折叠的 条评论
为什么被折叠?



