以下内容全部或部分转自或参考于网络。
一、主题的来源有三个:
1.Android系统自带的,适用于较老Android 版本已过时。
2.来自兼容包的(如AppCompat ),适用于支持相应兼容包的Android版本当下推荐使用。
3.自定义主题,适用于创建自主风格的应用(咱不研究)。
二、来自兼容包的主题
Material Design的主题, 最小支持版本为5.0:
• @android:style/Theme.Material (dark version)
•@android:style/Theme.Material.Light (light version)
•@android:style/Theme.Material.Light.DarkActionBar
与之对应的兼容主题 Compat Theme:
•Theme.AppCompat 暗的
•Theme.AppCompat.Light 亮的
Theme.AppCompat.Light.NoActionBar 没有标题栏
•Theme.AppCompat.Light.DarkActionBar 标题栏是暗的,其它是亮的
兼容主题意思是如果运行程序的手机API是21则就相当于是Material主题,如果运行程序的手机API是11则就相当于是Holo主题,以此类推。
兼容包v7会被Google公司不断升级:
比如 appcompat-v7-21.0 表示升级到向 API 21 兼容
比如 appcompat-v7-23.2 表示升级到向 API 23 兼容
下图中VS2015所建项目中"values-21"表示API 21的兼容项,当应用安装在手机上时会自动根据系统版本选择相应的"values"的文件夹中的文件。
![]()
颜色 Color Palette
我们可以根据我们的app的风格,去定制Color Palette(调色板),重点有以下几个属性:
•colorPrimary 对应ActionBar的颜色。
•colorPrimaryDark对应状态栏的颜色
•colorAccent 对应EditText编辑时、RadioButton选中、CheckBox等选中时的颜色。

本文介绍了Android系统中的主题来源,包括Android自带、AppCompat兼容包和自定义主题。重点讲解了AppCompat兼容包中的Material Design主题,如Theme.Material和Theme.AppCompat系列,并解释了它们如何根据设备API版本自动适配。此外,还提到了颜色调色板ColorPalette的重要属性,如colorPrimary、colorPrimaryDark和colorAccent。最后,讨论了如何根据系统版本选择相应的资源文件。

7775

被折叠的 条评论
为什么被折叠?



