0

我创建了一个自定义样式,在其中更改了整个 App 的背景。现在我想将浅蓝色的项目更改为红色。我不想更改每个单独的视图...有没有一种简单快捷的方法来更改它,就像应用程序的背景一样?

<?xml version="1.0" encoding="UTF-8"?>

<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <color name="colorBackground">#A0A0A3</color>
    <color name="windowBackground">#0B2265</color>
    <color name="textColor">#FFFFFF</color>
    <color name="highlight">#ED1B24</color>

    <style name="CustomStyle" parent="android:Theme.Holo">
        <item name="android:windowBackground">@color/windowBackground</item>
        <item name="android:colorBackground">@color/colorBackground</item>
        <item name="android:textColor">@color/textColor</item>

    </style>
</resources>

我想改变的颜色

4

3 回答 3

2

你不能只改变一种颜色,一切都会改变。大部分 UI 元素都是 png 图形,因此您必须自己更改所有图形并创建自己的主题。

于 2012-08-21T13:26:17.573 回答
1

至于 ActionBar 和 EditText - 这些是 9-patch 可绘制对象,您可以用自己的替换来更改外观。例如,查看ActionBar 下面的行的这个答案和EditText 的这个答案

至于 DatePicker,我不太确定 - 还没有使用它。我建议查看 Android 源代码以找出蓝线的来源(例如来自样式属性或硬编码)。一种方法是打开 DatePicker.class,查看加载了哪些 XML 文件来构建布局,并从那里找到任何关联的样式和可绘制对象。如果您找到 XML / drawables,请将它们复制到您的项目中,更改它们以满足您的需求,然后以与 Android 系统相同的方式将它们应用到(在这种情况下)DatePicker(如源代码中所示)。

于 2012-08-21T13:52:09.737 回答
0

您可以创建自己的主题并将其应用于整个应用程序

请参阅以下链接:http: //developer.android.com/guide/topics/ui/themes.html

于 2012-08-21T13:18:45.250 回答