更改视图颜色的问题

时间:2015-11-01 19:37:19

标签: android colors textview spinner

所以我试图将我的应用颜色改为蓝色,我所拥有的大多数观点都不愿意与我合作。

这是图片:

image

在这里,我想将微调器上的绿色部分的颜色,编辑文本和复选框视图(绿色)更改为黑色或蓝色。 我已经遍布Stack Overflow,我无法找到解决方案!

非常感谢,如果可能的话,我希望有一个XML解决方案,但我不介意一个程序化的解决方案!

2 个答案:

答案 0 :(得分:0)

看看这个resource generator

选择你想要生成的颜色和小部件,瞧!您将它们复制到项目中并在xmls中引用它们。

答案 1 :(得分:0)

将这些内容添加到base theme

中的styles.xml
     <item name="colorControlNormal">@color/YOUR_COLOR</item>
     <item name="colorControlActivated">@color/YOUR_COLOR</item>
     <item name="colorControlHighlight">@color/YOUR_COLOR</item>

注意:上述更改将影响整个应用程序中的EditTexts和其他视图

如果没有,并且如果您使用的是AppCompat v22支持库,则可以在EditText中指定主题:android:theme="@style/Theme.App.Base.
这将确保样式不会影响您不想更改的布局中的其他视图

此外,如果您想更改上述解决方案,只需添加另一个特定于EditTexts和Spinners的主题,并在需要时将其应用于所有Spinners

<style name="MyWidgetTheme">
    <item name="colorControlNormal">@color/YOUR_COLOR</item>
    <item name="colorControlActivated">@color/YOUR_COLOR</item>
    <item name="colorControlHighlight">@color/YOUR_COLOR</item>
</style>

并在EditText,Spinner或任何其他视图中,只需指定此主题:

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="Demo"
        android:lines="1"
        android:theme="@style/MyWidgetTheme"
        />

    <Spinner
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:theme="@style/MyWidgetTheme"></Spinner>