我有一个微调器,我想在未单击时更改颜色。 活动中的视图。单击时,我设法更改了文本和背景的颜色,但没有更改默认文本和背景。而且由于应用程序的背景很暗,因此很难看到。我该怎么做。这是我在activity_main.xml上的微调器代码
<Spinner
android:id="@+id/spinner"
android:layout_width="114dp"
android:layout_height="33dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:theme="@style/Spinner"
app:layout_constraintBottom_toTopOf="@+id/ping_btn"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.507"
app:layout_constraintStart_toEndOf="@+id/editText"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.025" />
我的微调风格
<style name="Spinner" parent="Widget.AppCompat.Light.DropDownItem.Spinner">
<item name="android:paddingStart">0dp</item>
<item name="android:paddingEnd">0dp</item>
<item name="android:textColor">@color/textColor</item>
<item name="android:backgroundTint">@color/background</item>
<item name="android:textSize">14sp</item>
</style>
这是应用程序的屏幕截图 http://pctechtips.org/apps/droid.png
为微调器项创建自定义 XML 文件。
spinner_item.xml:
为此文件中的文本指定自定义颜色和大小。
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:gravity="left"
android:textColor="#FF0000"
android:padding="5dip"
/>
现在使用此文件显示微调器项目,如下所示:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.spinner_item,list);
无需设置下拉资源。只需spinner_item.xml才能在微调器中显示您的项目。
参考自"如何更改微调器文本大小和文本颜色?