#android #xml #android-layout
Вопрос:
У меня есть TextInputLayout, в котором я использую автозаполнение текста и реализую выпадающее меню для пола. проблема в том, что белый цвет отображается сверху и снизу на фоне выпадающих элементов.Я придал цвет фона желтый.
Это мой XML
<com.google.android.material.textfield.TextInputLayout
android:id="@ id/textInputLayoutGender"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="32dp"
android:layout_marginTop="70dp"
android:layout_marginEnd="32dp"
android:hint="Gender"
android:textColorHint="#858585"
app:boxCornerRadiusBottomEnd="45dp"
app:boxCornerRadiusBottomStart="45dp"
app:boxCornerRadiusTopEnd="45dp"
app:boxCornerRadiusTopStart="45dp"
app:boxStrokeColor="@color/edit_textbox_color"
app:boxStrokeWidth="2dp"
app:endIconTint="#FFC153"
app:hintTextColor="@color/yellow"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.506"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@ id/textViewInformation"
tools:ignore="MissingConstraints">
<AutoCompleteTextView
android:id="@ id/gender"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableStart="@drawable/sex"
android:drawablePadding="16dp"
android:fontFamily="@font/montserrat_medium"
android:inputType="textNoSuggestions"
android:textColor="@color/yellow" />
</com.google.android.material.textfield.TextInputLayout>
Это я использую для выпадающих элементов
<com.google.android.material.textview.MaterialTextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:id="@ id/textView"
android:background="@color/yellow"
android:textColor="@color/black"
android:padding="14dp"
>
</com.google.android.material.textview.MaterialTextView>
Комментарии:
1. установите раскрывающийся фон макета.
Ответ №1:
Попробуйте применить рисование фона программно, как показано ниже:
autoCompleteTextView.setDropDownBackgroundDrawable(
context.getResources().getDrawable(R.drawable.yellow_drawable));
Создайте yellow_drawable.xml
с помощью сплошного желтого цвета.
Комментарии:
1. или программно
new ColorDrawable(color)
, гдеcolor
создается путемContextCompat.getColor
указания наR.color.yellow
— то же, что установлено для фона дляTextView
2. я использовал эту строку, она решена, но я не знал, как это сделать?? потому что я передал код белого цвета «gender.setDropDownBackgroundDrawable(Drawable.createFromPath(«#fff»));
Ответ №2:
Вы можете изменить фоновое изображение выпадающего списка, используя
setDropDownBackgroundResource();