Android TV 焦点控制
时间:2022-07-25
本文章向大家介绍Android TV 焦点控制,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Android TV 焦点控制
电视上都是通过控件获取焦点来实现点击效果的
android:focusable="true"//布局文件中设置一个控件能否获得焦点
android:setFocusableInTouchMode="true"//这个是触摸是否能获得焦点,因为有的TV要求遥控
器和触摸都可以用,这时会用到
android:focusedByDefault="true"//设置默认焦点 低版本用不了,不过可以用requestFocus()强制获取焦点 这个属性只能在API 26 或者更高版本中使用,如果你的最低版本低于26则会报错
android:defaultFocusHighlightEnabled="true"//原生控件获取焦点高亮显示 这个属性也能在API 26 或者更高版本中使用,如果你的最低版本低于26则会报错
意思就是可以获取到焦点,为false则不可获取焦点, 在代码里
btnTest.setFocusable(true);//代码中设置一个控件能否获得焦点
btnTest.setFocusableInTouchMode(true);//这个是触摸是否能获得焦点,因为有的TV要求遥控器和触摸都可以用,这时会用到
btnTest.setFocusedByDefault(true);//设置默认焦点 低版本用不了,不过可以用requestFocus()强制获取焦点 这个属性只能在API 26 或者更高版本中使用,如果你的最低版本低于26则会报错
btnTest.setDefaultFocusHighlightEnabled(true);//原生控件获取焦点高亮显示 这个属性也能在API 26 或者更高版本中使用,如果你的最低版本低于26则会报错
为false则不可获取焦点。 在已知控件ID的情况下我们可以设置上下左右的移动控件,
android:nextFocusUp="@id/tv_test"//当按上键时,下一个获得焦点的控件为tv_test
android:nextFocusDown="@id/tv_test"//当按下键时,下一个获得焦点的控件为tv_test
android:nextFocusLeft="@id/tv_test"//当按左键时,下一个获得焦点的控件为tv_test
android:nextFocusRight="@id/tv_test"//当按右键时,下一个获得焦点的控件为tv_test
代码中:
btnTest.setNextFocusUpId(R.id.tv_test);//当按上键时,下一个获得焦点的控件为tv_test
btnTest.setNextFocusDownId(R.id.tv_test);//当按下键时,下一个获得焦点的控件为tv_test
btnTest.setNextFocusLeftId(R.id.tv_test);//当按左键时,下一个获得焦点的控件为tv_test
btnTest.setNextFocusRightId(R.id.tv_test);//当按右键时,下一个获得焦点的控件为tv_test
btnTest.requestFocus()://强制设置一个焦点到指定的view或它的一个子类,(前提是
- 厚土Go学习笔记 | 24. map字典测试用例(文字出现次数统计)
- .NET Core+MySql+Nginx 容器化部署
- Trie树分析
- 厚土Go学习笔记 | 23. map字典的使用
- JDK动态代理的底层实现原理
- 冷场了吗?我带着phpcms9.6.2 注入来救场了
- 厚土Go学习笔记 | 22. 实现Pic
- ie8和chrome获取上传图片的宽度和高度等尺寸
- 厚土Go学习笔记 | 21. range用法
- Golang Stub初体验
- 厚土Go学习笔记 | 20. slice 继续
- 数据挖掘算法之深入朴素贝叶斯分类
- 歪?我想要一个XXE。
- 厚土Go学习笔记 | 19. slice和数组很像,但是slice可以添加元素
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 一行代码如何隐藏 Linux 进程?
- SSH 只能用于远程 Linux 主机?那说明你见识太小了!
- 干货 | Trip.com 机票React Native整洁架构2.0实践
- 干货 | 日均TB级数据,携程支付统一日志框架
- 为什么 HTTPS 是安全的?
- Hello World背后的故事:如何在Linux上编译C语言程序
- 浅谈Linux的动态链接库
- 初识ABP vNext(9):ABP模块化开发-文件管理
- NIFI里你用过PutDatabaseRecord嘛?
- NIFI里的数据库连接池
- 数据抽取的常见理论方法
- 万字讲解API网关的来龙去脉
- python+GDAL+numpy,点图层提取栅格像元数据
- 继续上一次的遥感影像镶嵌,这次使用gdal_merge.py
- R海拾遗-apply家族学习