【发布时间】:2022-03-31 21:06:28
【问题描述】:
我发现的解决方案可以更改所有的微调器下拉图标:
1.创建自定义可绘制对象
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/vector_drawable_ic_dropdown_black" android:state_focused="true" android:state_pressed="false" />
<item android:drawable="@drawable/vector_drawable_ic_dropdown_black" android:state_focused="true" android:state_pressed="true" />
<item android:drawable="@drawable/vector_drawable_ic_dropdown_black" android:state_focused="false" android:state_pressed="true" />
<item android:drawable="@drawable/vector_drawable_ic_dropdown_black" />
</selector>
2。将 drawable 设置为微调器背景:
<Spinner
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:background="@drawable/custom_spinner_icon"
android:gravity="center"
android:paddingBottom="8dp"
android:paddingTop="8dp"
android:textColor="@color/textcolorprimary" />
结果是:
正如您所见,这不是一个可接受的解决方案,因为图标需要右对齐而不是拉伸。
如何使图标不拉伸并正确对齐?
编辑
由于没有可行的解决方案,但我想我必须指定我的问题。 这是我的 Spinner 使用标准主题的外观:
<Spinner
android:id="@+id/products_download_spinner_language"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:gravity="center"
android:paddingBottom="8dp"
android:paddingTop="8dp"
android:textColor="@color/textcolorprimary"
android:theme="@android:style/Theme.Holo.Light.DarkActionBar" />
而我想要的一切(我猜这真的不多)正在改变箭头。我不希望显示右下角的那个箭头,我希望这个箭头垂直居中显示在右边:
到目前为止我尝试过的每个解决方案:
How to set dropdown arrow in spinner?
只是没有工作。他们有拉伸图标或底线丢失或其他完全错误的东西。我只是想要另一个箭头。
【问题讨论】:
-
太可笑了,这还没有解决:/
-
@Mulgard 你能弄清楚如何使用矢量绘图来做到这一点吗?接受的答案似乎是使用
bitmap(使用 .png 或其他东西),您的问题似乎有矢量可绘制对象。