【问题标题】:How to customize style from spinner dropdown CHOICES?如何从微调器下拉 CHOICES 自定义样式?
【发布时间】:2011-12-26 00:57:00
【问题描述】:

我可以使用以下方法在微调器下拉菜单中自定义所选选项的背景:

<item name="android:spinnerStyle">@style/customSpinner</item>
<style name="customSpinner" parent="@android:style/Widget.Holo.Light.Spinner">
<item name="android:textColor">#000000</item>
<item name="android:background">#000000</item>
</style>

但我无法更改下拉菜单的选项列表的背景和文本颜色。我如何做到这一点?

【问题讨论】:

    标签: android android-layout android-widget android-xml android-spinner


    【解决方案1】:
    adapter.setDropDownViewResource(R.layout.custom_spinner);
    

    custom_spinner.xml -

    <?xml version="1.0" encoding="utf-8"?>
    <TextView
      xmlns:android="http://schemas.android.com/apk/res/android"
      parent="@android:style/TextAppearance_Widget_DropDownItem"
      android:textColor="#988767"
    >
    </TextView>
    

    【讨论】:

    • 谢谢,但我想使用默认的 android 样式,只是想更改文本颜色。我怎样才能做到这一点?
    • 制作自定义样式,继承你想要的android样式并覆盖textColor属性
    • @DavidMarmoy 但我只是找不到适用于下拉列表选项的 Android 样式。选择的选项是 android:style/Widget.Holo.Light.DropDownItem.Spinner。但它不是其他可用选项的唯一选择。
    • 我已经为你更新了答案。但是,这尚未经过测试,它应该为您指明正确的方向
    • 对不起,我应该更彻底地阅读您的问题,我可以看到您已经知道如何做到这一点。那么,您是否正在为上述答案中的 textview 寻找要继承的样式名称?我不知道它的名字,但是一个hack可能是通过android sdk文件夹并导航到drawables,在那里你可以找到他们用于android spinner项目的ninepatch。然后你可以使用上面的adapter.setDropDownViewResource 和一个自定义的textview,你已经将背景设置为那个ninepatch。这只是我的想法,我相信你能找到更好的方法。
    猜你喜欢
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 2015-06-19
    • 2017-07-31
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    相关资源
    最近更新 更多