Android TV (四)(创建电视导航)
来源:互联网 发布:手机网络e是什么意思 编辑:程序博客网 时间:2024/04/27 20:45
电视设备为应用程序提供了一套有限的导航控件。为你的应用程序创建一个有效的导航方案取决于在操作你的应用程序时对有限的导航控件和用户感知的理解。当你为电视创建应用程序时,需要特别注意的是用户使用遥控按钮来实现导航,而不是触摸屏。
使用方向键导航
用户可以使用遥控器的方向键或者箭头键来远程控制电视。这种类型的控制限制为向上,向下,向左,向右运动。
Android框架自动处理布局元素之间的方向导航,通常不需要为应用程序做任何额外的操作。然而,你应该使用方向键来彻底的测试以便发现导航过程中的任何问题。遵循以下规则:
1.用户使用方向键能够浏览到屏幕上的所有控件。
2.通过焦点滚动列表,通过上下键滚动列表,使用“Enter”键可以选中子项。
3.确保控件之间的切换是直接的、可预测的。
修改方向导航
Android框架自动使用基于布局可聚焦元素的相对位置的定向导航方案。你应该使用方向键测试你的应用程序生成的导航方案。测试之后,如果你希望用户以特定的方式来控制你的布局,你可以为视图设置显式定向导航。如下:
<TextView android:id="@+id/Category1" android:nextFocusDown="@+id/Category2"\>
nextFoucsDown 按下方向键时,指定下一个获取焦点的视图;
nextFoucsLeft 按左方向键时,指定下一个获取焦点的视图;
nextFoucsRight 按 右方向键时,指定下一个获取焦点的视图;
nextFoucsUp 按上方向键时,指定下一个获取焦点的视图;
提供清晰的焦点和选择
在电视上一个成功的应用导航方案取决于用户确定屏幕中界面的元素焦点的难易程度。
如果你没有为焦点项目提供明确的变化迹象,用户会很快变得沮丧并退出应用程序。
你的布局应该通过颜色、大小、动画或者这些属性的组合帮助用户轻松的确定下一步的行为。使用统一的方案指示应用程序的焦点。
Android提供了 Drawable State List Resources来实现对焦点和选中控件的突出。代码如下:
<!-- res/drawable/button.xml --><?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/button_pressed" /> <!-- pressed --> <item android:state_focused="true" android:drawable="@drawable/button_focused" /> <!-- focused --> <item android:state_hovered="true" android:drawable="@drawable/button_focused" /> <!-- hovered --> <item android:drawable="@drawable/button_normal" /> <!-- default --></selector>
在xml中使用:
<Button android:layout_height="wrap_content" android:layout_width="wrap_content" android:background="@drawable/button" />
- Android TV (四)(创建电视导航)
- Android TV (三)(创建电视页面布局)
- [中英文对照]android Designing for TV(二) ------ Optimizing Navigation for TV 优化电视导航
- 创建TV导航
- Optimizing Navigation for TV 优化电视导航
- android TV 开发 (一) 准备开发电视应用
- android TV 开发 (二) 处理电视的硬件
- Android TV开发(—)开始电视应用
- Android TV (二)(处理电视硬件)
- Android TV应用---创建TV应用
- Android TV开发总结(四)通过RecycleView构建一个TV app列表页(仿腾讯视频TV版)
- android CTS测试之TV智能电视总结笔记
- Android 智能TV电视系统遥控器键值添加
- Android 智能TV电视系统遥控器键值添加
- Android TV 电视调试和遥控器事件监听
- Android电视TV盒子开发——常用ADB命令
- Android电视TV盒子开发——常用ADB命令
- 电视端Android TV应用移植开发常见问题Q&A-Android TV 应用开发
- 查看centos版本号信息
- 给予Java初学者的学习路线建议
- matplotlib绘图系列----3D曲面图与散点图
- request.getParameter 和 request.getAttribute 的功能作用详解.
- android studio 可以正常编译,但是app上有个叉
- Android TV (四)(创建电视导航)
- 什么是PKI?
- 实训第七天
- vue转换器
- 第十五周项目1(2)-验证算法(希尔排序)
- Marthon docker 配置fluent示例 以及tag使用
- 110. Balanced Binary Tree
- http://yanue.net/post-107.html
- 第12周项目1- Prime算法的验证