Android L Settings 简要分析

Android L Settings 简要分析

ID:47102404

大小:224.45 KB

页数:51页

时间:2019-08-03

Android L Settings 简要分析_第1页
Android L Settings 简要分析_第2页
Android L Settings 简要分析_第3页
Android L Settings 简要分析_第4页
Android L Settings 简要分析_第5页
资源描述:

《Android L Settings 简要分析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、LSettings模块首界面初始化流程 LSettings模块首界面为Settings,继承自SettingsActivity,SettingsActivity继承自Activity。 首先看一下Settings.java代码可以发现它没有重写任何SettingsActiviy的方法,也没有增加任何自己的方法,唯独增加了许多静态内部类,如:    /*   *Settingssubclassesforlaunchingindependently.   */    public static class Bluetoo

2、thSettingsActivity extends SettingsActivity{ /*empty*/ }    public static class WirelessSettingsActivity extends SettingsActivity{ /*empty*/ }    public static class SimSettingsActivity extends SettingsActivity{ /*empty*/ }    public static class TetherSettings

3、Activity extends SettingsActivity{ /*empty*/ }    public static class VpnSettingsActivity extends SettingsActivity{ /*empty*/ }    public static class DateTimeSettingsActivity extends SettingsActivity{ /*empty*/ }    public static class StorageSettingsActivity 

4、extends SettingsActivity{ /*empty*/ }    public static class WifiSettingsActivity extends SettingsActivity{ /*empty*/ }   ... 看注释可以知道,这些子类是为了启动特定独立的Settings选项而创建的,例如在某个应用里需要设置无线那么只需要启动WirelessSettingsActivity就可以了。 所以Settings模块的启动流程直接看SettingsActiviy就行了。    3.1S

5、ettingsActivity.onCreate方法    onCreate方法是Activity的生命周期第一步,看看SettingsActivity在这里都做了些什么?      //ShouldhappenbeforeanycalltogetIntent()    getMetaData(); 这个方法用来获得Activity的额外数据mFragmentClass,如果可以获得这个数据,那么下面会去显示mFragmentClass对应的Activity。直接启动Settings模块不会获得这个数据。(如果Set

6、tings模块有后台运行,mFragmentClass会记录最后打开的Settings中的那个ActivityClassName,从其他activity跳转过来后会,会直接运行记录的这个Activity)  mIsShowingDashboard(Settings所有选项) =className.equals(Settings.class.getName());这一步很重要,因为我们是从Settings这个Activity过来的,所以这里的mIsShowingDashboard为true。       //Thisi

7、sa"SubSettings"when:        //-thisisarealSubSettings        //-or:settings:show_fragment_as_subsettingispassedtotheIntent        final boolean isSubSettings=className.equals(SubSettings.class.getName())

8、

9、         intent.getBooleanExtra(EXTRA_SHOW_FRAGMENT_AS_S

10、UBSETTING, false);这个判断很重要但很明显这时isSubSettings的值是fasle,暂时忽略。        setContentView(mIsShowingDashboard ?               R.layout.settings_main_dashboard :R.layout.settings_main

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。