Android O Settings源码流程分析(静态界面篇)

Android O Settings 

Settings

路径: packages/apps/Settings

主界面和子界面

从清单文件AndroidManifest.xml中入手:

setting的主界面的Activity为 Settings

Settings.java类看,除了大量静态类继承SettingsActivity,就没什么东西了。

setting的子界面Activity为 SubSettings

SubSttings java 里有重写了两个方法 向上导航和判断是否有效fragment,还有一个静态内部类继承本身。

Settings与SubSttings 都是空Activity(不继承7大生命周期)

Settings与SubSttings 都继承于SettingsActivity

SettingsActivity继承自SettingsDrawerActivity,而SettingsDrawerActivity是在SettingLib中定义,SettingsDrawerActivity名称是沿用N版本的名字,但是侧滑栏功能在O版本上已经移除了。

主要分析的是SettingsActivity的onCreate()方法;

布局加载:

主界面的layout为 :settings_main_dashboard.xml:

主界面布局中包含两个FrameLayout,一个是顶部搜索栏,还有下面的主要内容(显示一级菜单)

参考7.0版本主界面布局:

子界面的layout为 :settings_main_perfs.xml:

子界面由一个LinearLayout和一个RelativeLayout组成。RelativeLayout默认是隐藏的。

界面如下:

Settings界面:

主界面使用DashboardSummary(Fragment)进行填充

子界面则使用各自的Fragment,并设置各自的主题。

 

点击进入下篇——界面渲染篇

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值