我尝试使用样式文件自定义 spinnerItem。我可以更改微调器样式(背景、边框或字体颜色等),但 spinnerItem 始终具有白色文本和灰色背景。
你有什么想法吗?
ps:我不应该为此使用新的适配器。
这是我的 styles.xml:
<style name="AppTheme" parent="AppTheme.Base">
<item name="android:spinnerItemStyle">@style/SpinnerItemTheme</item>
</style>
<style name="SpinnerTheme" parent="Edit">
<item name="android:background">@color/blueColor</item>
<item name="android:dropDownSelector">@color/darkRedColor</item>
<item name="android:dropDownItemStyle">@style/SpinnerItemTheme</item>
<item name="android:spinnerItemStyle">@style/SpinnerItemTheme</item>
</style>
<style name="Edit" parent="Text.Display">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">match_parent</item>
<item name="android:gravity">top|left</item>
<item name="android:textSize">20sp</item>
</style>
<style name="SpinnerItemTheme" parent="SpinnerTheme">
<item name="android:textColor">#000000</item>
<item name="android:background">@color/blueColor</item>
</style>
这是我的布局文件:
<android.support.v7.widget.AppCompatSpinner
android:layout_width="match_parent"
android:layout_height="match_parent"
style="@style/SpinnerTheme"
android:prompt="@string/prompt_nation"
android:entries="@array/countries">
</android.support.v7.widget.AppCompatSpinner>
最佳答案
试试这段代码:
<resources>
<style name="customtheme" parent="@android:style/Theme.Light">
<item name="android:spinnerItemStyle">@style/SpinnerItem</item>
<item name="android:spinnerDropDownItemStyle">@style/SpinnerDropDownItem</item>
</style>
<style name="SpinnerItem">
<item name="android:textColor">@color/your_color</item>
<item name="android:background">@drawable/your_backgroung</item>
</style>
<style name="SpinnerDropDownItem">
<item name="android:textColor">@color/your_color</item>
<item name="android:background">@drawable/your_background</item>
</style>
</resources>
关于android - 如何使用 styles.xml 自定义 SpinnerItemStyle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41375598/