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 原生系统这样代码是没问题,猜测可能是系统配置低性能较差,以及开发做的反优化有关...

相关推荐
风清云淡_A4 分钟前
【Android36】android开发实战案列之RecyclerView组件的使用方法
android
we1less14 分钟前
Android-HAL (四) AIDL
android
Android技术之家43 分钟前
2026 Android开发五大趋势:AI原生、多端融合、生态重构
android·重构·ai-native
龚礼鹏1 小时前
图像显示框架七——createSurface的流程(基于Android 15源码分析)
android
聆风吟º1 小时前
【Spring Boot 报错已解决】Spring Boot项目启动报错 “Main method not found“ 的全面分析与解决方案
android·spring boot·后端
Rysxt_2 小时前
Kotlin前景深度分析:市场占有、技术优势与未来展望
android·开发语言·kotlin
莫白媛2 小时前
Android开发之Kotlin 在 Android 开发中的全面指南
android·开发语言·kotlin
broadview_java12 小时前
使用 ConstraintLayout 构建自适应界面
android
wy31362282116 小时前
android——开发中的常见Bug汇总与解决方案(闪退)
android·bug
小小测试开发16 小时前
实战派SQL性能优化:从语法层面攻克项目中的性能瓶颈
android·sql·性能优化