Android TV界面聚焦效果---凸显效果

Android TV端应用程序的开发时,在聚焦效果上往往是将图标发大并且凸显到最上层来显示,如下图的效果。

Android TV界面聚焦效果---凸显效果_第1张图片

该聚焦凸显效果有两种可行的实现方案,不过太麻烦了。

1)全两层布局,所谓全两层布局,就是图标显示层和聚焦凸显层分开,他们是完全重叠的两层。这种方式在程序上是非常不好办的,既要实现焦点转换又要实现上层凸显控件的消失或不消失状态,状态和逻辑都非常复杂。

2)部分两层布局,所谓部分两层布局,就是底层放需要呈现的图标,上层就只有2个可移动的图标,底层哪个图标获取了焦点,那么上层的焦点发大图标就马上在获取焦点上层显示并带动画,失去焦点时,焦点缩小图标就开始动画。如此反复,这个逻辑比较第一种是要简单很多。

简单的方案:

偶然间看SDK API时看到View.bringToFront()方法,就突发激动,并且认证了它。看来多看API才是王道。

如果不调用View.bringToFront()的话,将会是如下的结果:

Android TV界面聚焦效果---凸显效果_第2张图片

可以看出,这个ImageView被左右的ImageView遮挡了,并不是在最上层。

如果加上View.bringToFront()之后,就会浮现在最上层了。

源码下载



你可能感兴趣的:(android,tv,聚焦凸显效果)