我们知道在Settings中,各模块之间的Fragment基本都继承了DashboardFragment,当有点击事件时,就会回调DashboardFragment中的onPerferenceTreeClick()方法。
在onPreferenceTreeClick()方法中可以根据preference的key做事件拦截,如果不拦截,将会调用到父类InstrumentedPreferenceFragment的onPreferenceTreeClick()方法
在该方法中,又将会调用到androidx中的PreferenceFragmentCompat方法中,由于androidx中源码不开放,故在此不做分析,但下一步将回调到SettingsActivity中的onPreferenceStartFragment()方法
在该方法中由SubSettingLauncher类里面的launch()方法,启动了对应的空Activity,但在Setting中各模块的Activity都是继承SettingsActivity的。但对应的空Activity启动时,就会执行SettingsActivity中的onCreate()方法
最终在launchSettingFragment(initialFragment, isSubSettings, intent)方法中加载相对应的Fragment布局。
Android Settings 跳转流程
2025/2/25 1:31:09
来源:https://blog.csdn.net/iceFreedom/article/details/141265470
浏览:
次
关键词:Android Settings 跳转流程
版权声明:
本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。
我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com