您当前的位置:首页 > 计算机 > 编程开发 > 安卓(android)开发

android8.0中的bug

时间:02-10来源:作者:点击数:
在这里插入图片描述

如上图,是一个RecyclerView,这是我写的一个Launcher界面,按道理说触摸是不会产生焦点的,当我重启的时候,我不进行任何操作,当它自动锁屏时,我解锁,然后就能看到这个绿框了,真是恶心,如果我连上电脑,连接上投屏软件,此时还能用键盘的方向键控制焦点,效果如下:

在这里插入图片描述

一开始不知道是焦点问题时是真的恶心,完全摸不到头脑,知道是焦点问题后就禁用获取焦点:

android:focusable="false"
android:focusableInTouchMode="false"

发现没用,使用下面的属于可解决问题:

android:defaultFocusHighlightEnabled="false"

把这个属性加到RecyclerView上即可解决问题,不需要禁用焦点。这个属性上会有警告,告诉我们这个是Android8.0才有的属性,按照提示可以产生一个Android8.0的布局,如下:

在这里插入图片描述

它会生成一个layout-v26的文件夹,并产生一个一样的布局文件,只是在RecyclerView上会多一个属性:android:defaultFocusHighlightEnabled="false"

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门