我可以使用style =“@ style / Base.Widget.AppCompat.Spinner.Underlined”在spinner中添加下划线.如何仅使用样式更改下划线的颜色?我不想使用任何可绘制的文件来改变这一点.
<item name="colorControlHighlight">@color/colorAccent</item> <item name="colorControlNormal">@color/colorAccent</item>
使用上面的样式,当用户点击它时,它只有下划线.它在正常状态下不会改变下划线的颜色.
解决方法
默认情况下,Spinner将在AppTheme中使用通过android:textColorSecondary或colorControlNormal设置的颜色.因此,要么在那里设置适当的颜色,要么定义一个新主题并将其应用于您的Spinner:
例:
styles.xml
<style name="ThemeSpinner"> <!-- Color when pressed --> <item name="colorAccent">#ffa000</item> <!-- Default color for the dropdown arrow and line --> <item name="colorControlNormal">#ffc107</item> </style>
layout.xml
<Spinner style="@style/Widget.AppCompat.Spinner.Underlined" android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/ThemeSpinner" />
注意:下拉箭头也会着色 – 我不知道单独为箭头着色的选项