需求
最近有个需求做Tv的Launcher,要求要滑动,还有导航栏,第一次做,遇到很多坑,一起来看下吧!
实现
- TabLayout
第一想到的是用TabLayout实现,但实际用途中发现焦点会丢失。 可以参考这个Demo ,这个项目就是用TabLayout+自定义RecyclerView,有兴趣的可学习。 - ViewPager+LinearLayout
使用ViewPager滑动,LinearLayout 的addView 添加Tab。TabLayout也是用这个实现的,只是封装好了。我们用这种实现就要自己处理keyevent ,比如viewpager的页面到tab栏,tab栏在到viewpager页面,等等。最主要的问题就是焦点的处理,因为不能触屏控制只能通过遥控器。代码以后补上!!!