gpt4 book ai didi

java - Android EditTextPreference 样式

转载 作者:太空狗 更新时间:2023-10-29 12:43:49 25 4
gpt4 key购买 nike

在我的应用程序设置中,我使用 EditTextPreference ,而在 android API uder 11 edittext 字段上有黑色背景和黑色文本颜色。我怎样才能改变 EditTextPreferences 背景颜色?

我试过:主题:

<item name="android:editTextPreferenceStyle">@style/EditTextAppTheme</item>

风格:

<style name="EditTextAppTheme" parent="android:Widget.EditText">
<item name="android:background">@drawable/edit_text_holo_light</item>
<item name="android:textColor">#000000</item>
</style>

如果我将样式设置为:

<style name="EditTextPreferences" parent="android:Preference.DeviceDefault.DialogPreference.EditTextPreference">
<item name="android:background">@drawable/edit_text_holo_light</item>
<item name="android:textColor">#FF0000</item>
</style>

主题为:

<item name="android:editTextPreferenceStyle">@style/EditTextPreferences</item>

我得到错误:

error: Error retrieving parent for item: No resource found that matches the given name 'android:Preference.DeviceDefault.DialogPreference.EditTextPreference'.

最佳答案

在过去的几天里,我也一直在努力解决这个问题。我发现所有 EditTextPrefence扩展是 AlertDialogEditText .因此,如果您可以在您的主题中设置这两个样式,您将在 EditTextPreference 中找到您正在寻找的结果。 .这是我正在处理的内容:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">

<style name="LightTheme" parent="android:Theme.Light">
<item name="android:windowNoTitle">true</item>
<item name="android:background">@color/greyscale2</item>
<item name="android:textColor">@color/greyscale16</item>
<item name="android:textViewStyle">@style/LightTextView</item>
<item name="android:buttonStyle">@style/LightButton</item>
<item name="android:editTextStyle">@style/LightEditText</item>
<item name="android:alertDialogTheme">@style/LightDialog</item>
<item name="android:dialogPreferenceStyle">@style/LightDialog</item>
<item name="android:colorBackground">@color/greyscale2</item>
<item name="android:colorBackgroundCacheHint">@color/greyscale1</item>
</style>

<!-- TextView -->
<style name="LightTextView" parent="android:Widget.TextView">
<item name="android:textColor">@color/greyscale16</item>
<item name="android:background">@android:color/transparent</item>
</style>

<!-- Button -->
<style name="LightButton" parent="android:Widget.Button">
<item name="android:textColor">@color/greyscale16</item>
<item name="android:background">@drawable/light_button_background</item>
<item name="android:gravity">center_vertical|center_horizontal</item>
</style>

<style name="LightCheckBox" parent="android:Widget.CompoundButton.CheckBox">
<item name="android:background">@color/greyscale2</item>
</style>

<style name="LightEditText" parent="android:style/Widget.EditText">
<item name="android:background">@color/greyscale1</item>
<item name="android:editTextBackground">@color/greyscale2</item>
<item name="android:textColor">@color/greyscale16</item>
<item name="android:button">@style/DarkButton</item>
<item name="android:inputType">number</item>
</style>

<style name="LightDialog" parent="@android:style/Theme.Dialog">
<item name="android:background">@color/greyscale2</item>
<item name="android:textColor">@color/greyscale16</item>
<item name="android:textViewStyle">@style/LightTextView</item>
<item name="android:buttonStyle">@style/LightButton</item>
<item name="android:divider">@color/greyscale14</item>
</style>

注意
<item name="android:dialogPreferenceStyle">@style/LightDialog</item>
我的基本主题中的属性。我找到了样式资源 here , 更具体地说 alertDiaolg here (注意:这些也可以在你电脑上的SDK目录下找到)

我希望这至少能让您朝着正确的方向前进,我一直在努力解决这个问题(我的应用程序中的第一个主题)。快乐编码!

关于java - Android EditTextPreference 样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21311384/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com