简介:
有关于Android 实现应用内动态切换主题的常用方式有两种
- 通过Theme切换主题
- 通过AssetManager切换主题
本文主要介绍通过Theme切换主题。
通过AssetManager切换主题
Android通过AssetManager来加载皮肤包,用皮肤包里的资源替换现有资源达成换肤效果。对此暂时没有深入研究,留作以后填写,不再赘述。
通过Theme切换主题
Android 通过在activity中使用 setTheme()函数来设置背景样式,通过加载styles.xml里的样式来设置Android 应用的主题。(注意:需要在 setContentView(R.layout.activity_main);之前调用setTheme)
在开始制作主题之前我们先看下这张图
通过这张图我们可以了解到不同的字段代表的是哪一块的颜色,例如:
- colorPrimary 代表的是 App Bar 的颜色。
- colorPrimaryDark 代表的是状态栏的背景色。
我们也可以自己定制布局控件的颜色:
第一步: 在values文件夹下创建attr.xml ,在attr.xml写入属性名
<resources>
<a