当我们新建一个Android工程时,Android studio会默认的给我们生成一个AppTheme,内容如下
@color/colorPrimary
@color/colorPrimaryDark
@color/colorAccent
colorPrimary,colorPrimaryDark,colorAccent大家应该都已经非常熟悉了,分别控制如下界面中的颜色
下面我们要说的是其他一些和颜色相关的属性,这些属性可能你平时并不常用,但合理运用它们不仅可以使你的界面更加绚丽而且可以达到事半功倍的效果。(再次声明以下属性适用于5.0及其以上系统)
colorControlHighlight
colorControlHighlight用于控制 所有可点击的View 的涟漪效果颜色,以button举例来说
普通状态下的button
现在我们在AppTheme中添加下面这条属性
@color/colorAccent
colorButtonNormal
用于控制 normal 状态下button的颜色(注意和button的background属性的区别,设置colorButtonNormal后button依旧会具有涟漪效果,而设置background就没有涟漪效果了)
设置colorButtonNormal后button的normal状态如下
android:navigationBarColor
控制底部导航栏的背景色(注意前边必须有android:),例如:
下面说一下常用控件的颜色属性
EditText
unfocused —— colorControlNormal
focus —— colorAccent
cursor —— colorAccent
text color —— android:textColorPrimary
RadioButton
unselected —— colorControlNormal
selected —— colorAccent
CheckBox
box unchecked —— colorControlNormal
box checked —— colorAccent
Toolbar
background —— 布局文件中设置android:background="?attr/colorPrimary
overflow icon —— android:textColorPrimary
navigation icon —— android:textColorPrimary
action icons —— android:textColorPrimary
overflow menu background —— android:colorBackground
overflow text color —— android:textColorPrimary
ActionBar
background —— colorPrimary
title color —— android:textColorPrimary
overflow icon —— android:textColorPrimary
up button —— android:textColorPrimary
action icons —— android:textColorPrimary
overflow menu background —— android:colorBackground
overflow text color —— android:textColorPrimary
Spinner
indicator (not pressed) —— colorControlNormal
indicator (pressed) —— colorAccent
selected entry text color —— "android:textColorPrimary
SwitchCompat
thumb switch off —— colorSwitchThumbNormal
thumb switch on —— colorAccent
track overlay —— colorAccent"