我想向我的微调器添加边框和圆角,据我所知,这可以通过创建单独的自定义微调器 xml 文件来完成。然而,当我这样做时,旋转箭头消失了。即使我将位图添加到自定义微调器 xml 文件中,此问题仍然存在。
这是我的代码:
activity_main.xml
<Spinner
android:id="@+id/postOptions"
android:layout_width="150dp"
android:layout_height="48dp"
android:entries="@array/postOptions"
android:spinnerMode="dropdown"
android:background="@drawable/spinner_layout"
app:layout_constraintBottom_toTopOf="@+id/bottomNavigationView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.061"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/header"
app:layout_constraintVertical_bias="0.026" />
spinner_layout.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF"/>
<corners android:radius="4dp"/>
<stroke android:color="@color/theme" android:width="1dp"/>
<item>
<bitmap
android:gravity="center_vertical|right"
android:src="@drawable/baseline_arrow_drop_down_circle_24"/>
</item>
</shape>
当您使用
android:background="@color/your_color"
设置微调器背景颜色时,微调器默认箭头将消失
在框架布局中编写微调器代码,在这里您不需要使用单独的图像视图来显示下拉图标。
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/spinner_layout">
<Spinner
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:dropDownSelector="@color/colorAccent"
android:dropDownWidth="@dimen/dp_70"
android:spinnerMode="dropdown"
android:tooltipText="Select floor" />
</FrameLayout>
spinner_layout.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF"/>
<corners android:radius="4dp"/>
<stroke android:color="@color/theme" android:width="1dp"/>
</shape>