这套框架叫做Leanback,是google开发的
顺便吐槽一下,海外版的很多Android TV应用,都是基于Leanback框架做的,UI上千篇一律,看起来很闷
图中获焦的Item所在的行,就是Launcher的推荐位。 Google 提供了功能,允许各家App在这上面展示自己的推荐内容,不限于影片,因此,对于一个app来说,能占据这个位置,无疑对于App的推广是非常有利的。下面就来介绍一下怎么把我们的App的内容显示在这里面。
1.1 填充播放数据
可以将一些要跳转的页面,参数信息,设置到Intent的对象中,比如栈的信息等等
1.2 建立Builder设定展示的元素
系统收到notification,才会展示在Launcher上,所以就需要一个Notification对象
Notification.Builder builder =new Notification.Builder(context)
这个builder里,需要设置一些参数,举例如下:
根据自己的需要,选择需要设置的内容,比如图标、标题、Intent等等,最后调用build方法生成notification对象
很简单,核心是调用notify,调用之前需要实例化服务。
一、Android N 及以下 (Recommenadtion Rows)
二、Android O (Recommenadtion Channels)
使用ArrayObjectAdapter.addAll()添加数组
添加单条数据使用ArrayObjectAdapter.add()
本人使用String[]的数据
添加方式为:
取数据:
item的布局中如果是< Layout>嵌套< View>的形式,layout设置focusable和clickable="true",如不做其他处理,则不会焦点放大。
解决方案步骤:
即使使用focusOutFront、focusOutEnd、focusOutSideStart、focusOutSideEnd没有效果
解决方案:在onBindViewHolder针对view设置setOnKeyListener
// 这是左键跳转方案,其他方向变更KeyEvent.KEYCODE_DPAD_LEFT 和View.FOCUS_LEFT即可
在Activity中
添加
github项目: https://github.com/CarryHekangkai/LeanbackDemo
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)