我有一个AutoCompleteTextView组件,我想将其默认下拉选择器更改为另一种颜色。首先我尝试了android:dropDownSelector="#FF400000"
,但它根本没有出现任何选择器!接下来,我将颜色放在可绘制的资源中:
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@android:color/holo_blue_dark"/>
</shape>
并将其链接起来:android:dropDownSelector="@drawable/drop_down_selector"
,但效果相同(没有选择器)。接下来我发现有人打开了一个类似的问题,仅针对微调器:http://code.google.com/p/android/issues/detail?id=24922,所以我尝试定义一种样式,如解决方案中所解释的那样:
<style name="AutoCompleteDropDown" parent="@android:style/Theme.Holo.Light">
<item name="android:dropDownListViewStyle">@style/AutoCompleteSelector</item>
</style>
<style name="AutoCompleteSelector" parent="@android:style/Widget.Holo.Light.ListView">
<item name="android:listSelector">#FF400000</item>
</style>
并将其关联:style="@style/AutoCompleteDropDown"
,但它没有做任何事情(但是,自从我删除了dropDownSelector
属性后,默认选择器又回来了。)
那我在这里错过了什么?我做错了什么?
更新:好的,按照建议,我也尝试了一个选择器:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:state_pressed="true"
android:state_focused="true" android:state_activated="true"
android:drawable="@android:color/holo_green_light"/>
</selector>
但它没有用,我仍然没有选择器(至少没有我能看到的)。
答案 0 :(得分:1)
主题和风格因意图而异。并使用不同的属性。主题定义不同小部件的样式。样式定义小部件本身。主题适用于应用程序或活动。
1)如果你想要它只是一个小部件。
您需要转到/platforms//res/values/values.xml,了解如何为窗口小部件定义样式(AutoCompleteTextView)。拿起所需的属性。在系统中定义相同的选择器,但需要修改。你甚至可以在/ res / drawable中找到选择器
2)如果你想成为整个应用程序:
a)您需要转到/platforms//res/values/themes.xml
b)在那里你可以找到你为AutoCompleteTextViewb选择的主题中的哪种风格
<item name="autoCompleteTextViewStyle">
@android:style/Widget.AutoCompleteTextView
</item>
c)然后得到res / values / styles.xml
d)在那里你可以找到小部件的样式。
e)然后你需要扩展主题。并使用新创建的样式覆盖autoCompleteTextViewStyle属性,如1选项。
答案 1 :(得分:1)
尝试从适配器生成的视图中删除背景。这对我有所帮助。