我有以下布局 XML:
<android.support.v7.widget.AppCompatSpinner
android:id="@+id/content_spinner"
style="@style/Widget.AppCompat.Spinner.Underlined"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_marginEnd="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:background="@drawable/border"
android:entries="@array/books"
android:spinnerMode="dropdown"
android:theme="@style/large_spinner"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@style/large_spinner
看起来像这样:
<style name="large_spinner" parent="Widget.AppCompat.Light.DropDownItem.Spinner">
<item name="android:paddingStart">0dp</item>
<item name="android:paddingEnd">0dp</item>
<item name="android:textColor">@color/nearlyBlack</item>
<item name="android:textSize">30sp</item>
<item name="android:drawableRight">@drawable/ic_menu_camera</item>
</style>
这给了我旋转器右侧的相机
图标,这是我想要的。然而,当我放下微调器时,图标出现在每个项目上,这是我不想要的。我只想将图标放在微调器的右侧,而不是在每个项目中。
我怎样才能实现这个目标?
最佳答案
试试这个
<android.support.v7.widget.AppCompatSpinner
android:id="@+id/content_spinner"
style="@style/Widget.AppCompat.Spinner.Underlined"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_marginEnd="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:background="@drawable/test"
android:entries="@array/books"
android:spinnerMode="dropdown"
android:theme="@style/large_spinner"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
android:background="@drawable/test"
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<layer-list>
<item>
<shape>
<solid android:color="@android:color/white" />
<corners android:radius="4dp" />
<padding android:left="8dp" />
</shape>
</item>
<item android:gravity="left|bottom" android:drawable="@drawable/ic_menu_camera" />
</layer-list>
</item>
</selector>
style name="large_spinner"
<style name="large_spinner" parent="Widget.AppCompat.Light.DropDownItem.Spinner">
<item name="android:paddingStart">0dp</item>
<item name="android:paddingEnd">0dp</item>
<item name="android:textColor">@color/nearlyBlack</item>
<item name="android:textSize">30sp</item>
</style>
关于java - 自定义微调器下拉箭头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51628135/