修改Material风格的主色值

support-v7-appcompat包在开发过程中,可能会涉及到修改控件颜色的地方

比如修改Edittext的背景色、RadioButton的对应状态色值等等

在安卓5.0以后,Material风格的主色值有以下两种

<color name="material_deep_teal_200">#ff80cbc4</color>
<color name="material_deep_teal_500">#ff009688</color>

分别对应了亮色主题和暗色主题

而打开extras\android\support\v7\appcompat\res\drawable-xhdpi项目下的资源文件,我们会发现,所有的资源图片主色调都是黑色,比如abc_btn_radio_to_on_mtrl_015.png

这里写图片描述

这是由于Theme下的colorAccent属性发挥了作用,系统会将默认的资源图片的黑色部分使用colorAccent声明的颜色来进行替换,知道了原理后,我们就可以针对这一特性进行快速修改控件颜色的操作了,在项目找到style.xml文件,在其声明的AppTheme内部加入代码如下

    <!-- Base application theme -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        ...
        <!-- 程序风格主色值 -->
        <item name="colorAccent">@color/blue</item>
        ...
    </style>

这样,即可达到修改Material风格的主色值的目的了,修改后的效果如图所示:

修改Material风格的主色值_第1张图片

  • Toolbar部分的颜色改变可以使用以下代码来改变
        <!--状态栏颜色 -->
        <item name="colorPrimary">@color/blue</item>

你可能感兴趣的:(开发,安卓,Material主色,Edittext背景)