如何在Android中更改特定视图的主题

时间:2014-12-22 17:23:02

标签: android view styles themes

我的应用使用经典(黑暗)全息主题。使用这个主题时,EditTexts当然是白色的。但是我有一个小的ViewGroup容器,其中一些EditTexts具有白色背景。它们的可见性明显很差,所以我想使用Holo.Light只为ViewGroup使这些EditTexts变黑。

我尝试将此样式用于ViewGroup中的每个EditText:

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:saveEnabled="false"
    style="@android:style/Widget.Holo.Light.EditText" />

它表现得很奇怪,因为只有提示颜色被设置为“看起来很黑”的EditText。例如,drawable仍然是白色。

请问您如何更改某个特定视图的主题?所以我仍然可以使用经典的Holo for app,但只将一些视图更改为Holo.Light。

2 个答案:

答案 0 :(得分:1)

我知道这是一年之后,但我一直在寻找答案。在基本布局中,输入以下内容:

android:theme="@style/AppTheme2"

将样式仅应用于该视图。

答案 1 :(得分:-1)

创建一个新的主题,继承自轻型全息主题而不是黑暗主题,并尝试将其设置为父视图的主题。

app:theme="@style/YourCustomTheme"