Android Settings 无障碍设置显示大小页面重复加载问题

基于Android 11,跟踪源码

显示大小页面

packages/apps/Settings/src/com/android/settings/display/PreviewSeekBarPreferenceFragment.java

通过commit() 提交更新页面显示大小。该方法是是在其父类PreviewSeekBarPreferenceFragment 实现调用。

基类预览滑动进度页面

packages/apps/Settings/src/com/android/settings/display/PreviewSeekBarPreferenceFragment.java

查看setPreviewLayer()方法,在所有用到该方法地方打印日志调试,发现

在操作一次滑动后,调用了两次。

分别是seekbar滑动监听下 onProgressChanged()

和初始化视图 onCreateView() 中;

新建一个setPreviewLayer(),
移除 mPreviewPagerAdapter.setPreviewLayer(index, mCurrentIndex,mPreviewPager.getCurrentItem(), animate); 这一行刷新逻辑, 在Seekbar滑动监听下 onProgressChanged()下替换默认方法

编译刷机验证。

ps:正常的Android 原生系统这样代码是没问题,猜测可能是系统配置低性能较差,以及开发做的反优化有关...

相关推荐
_龙小鱼_1 小时前
卡顿检测与 Choreographer 原理
android·kotlin
云手机管家2 小时前
账号风控突破:云手机设备指纹篡改检测与反制技术解析
android·运维·网络协议·网络安全·智能手机·矩阵·自动化
千里马-horse2 小时前
Detected for tasks ‘compileDebugJavaWithJavac‘ (17) and ‘kspDebugKotlin‘ (21).
android·jdk·kspdebugkotlin
柯南二号4 小时前
【Android】Android 实现一个依赖注入的注解
android
archko6 小时前
语音识别-3,添加ai问答
android·人工智能
奔跑吧 android12 小时前
【android bluetooth 案例分析 03】【PTS 测试 】【PBAP/PCE/SGSIT/SERR/BV-01-C】
android·pts·aosp·pbap·sgsit
難釋懷15 小时前
Android开发-Application
android
seven272916 小时前
Android 适配之——targetSdkVersion 30升级到31-34需要注意些什么?
android·版本设置31-34·targetsdk
androidwork18 小时前
Kotlin Android单元测试MockK指南
android·kotlin
麻辣璐璐18 小时前
Kotlin并发请求的一些知识记录
android·kotlin