如何填充 MaterialComponents.TextInputLayout 上的下拉菜单
How to populate dropdown on MaterialComponents.TextInputLayout
我知道如何填充微调器,但我无法绕过 (Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu) 知道怎么做吗?
我的资源是这样的
<string-array name="planets_array">
<item>Mercury</item>
<item>Venus</item>
<item>Earth</item>
<item>Mars</item>
<item>Jupiter</item>
<item>Saturn</item>
<item>Uranus</item>
<item>Neptune</item>
</string-array>
My Layout
<com.google.android.material.textfield.TextInputLayout
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu"
android:id="@+id/spinner1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:layout_marginTop="12dp"
android:hint="@string/select_type"
android:clickable = "true"
android:focusable = "true"
android:focusableInTouchMode = "false"
android:inputType = "none"
>
<com.google.android.material.textfield.MaterialAutoCompleteTextView
style="@style/TextInputLayoutStyle"
android:inputType="none" />
</com.google.android.material.textfield.TextInputLayout>
MaterialAutoCompleteTextView MySpinner = (MaterialAutoCompleteTextView) findViewById(R.id.spinner1);
ArrayAdapter Myadapter = new ArrayAdapter<>(this,
android.R.layout.simple_spinner_item, getResources().getStringArray(R.array.planets_array));
Myadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
MySpinner.setAdapter(Myadapter);
谢谢
您必须填充 adapter
AutoCompleteTextView
而不是 TextInputLayout
:
<com.google.android.material.textfield.MaterialAutoCompleteTextView
android:id="@+id/autocomplete"
和:
AutoCompleteTextView autocomplete = view.findViewById(R.id.autocomplete);
autocomplete.setAdapter(adapter);
我知道如何填充微调器,但我无法绕过 (Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu) 知道怎么做吗?
我的资源是这样的
<string-array name="planets_array">
<item>Mercury</item>
<item>Venus</item>
<item>Earth</item>
<item>Mars</item>
<item>Jupiter</item>
<item>Saturn</item>
<item>Uranus</item>
<item>Neptune</item>
</string-array>
My Layout
<com.google.android.material.textfield.TextInputLayout
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu"
android:id="@+id/spinner1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:layout_marginTop="12dp"
android:hint="@string/select_type"
android:clickable = "true"
android:focusable = "true"
android:focusableInTouchMode = "false"
android:inputType = "none"
>
<com.google.android.material.textfield.MaterialAutoCompleteTextView
style="@style/TextInputLayoutStyle"
android:inputType="none" />
</com.google.android.material.textfield.TextInputLayout>
MaterialAutoCompleteTextView MySpinner = (MaterialAutoCompleteTextView) findViewById(R.id.spinner1);
ArrayAdapter Myadapter = new ArrayAdapter<>(this,
android.R.layout.simple_spinner_item, getResources().getStringArray(R.array.planets_array));
Myadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
MySpinner.setAdapter(Myadapter);
谢谢
您必须填充 adapter
AutoCompleteTextView
而不是 TextInputLayout
:
<com.google.android.material.textfield.MaterialAutoCompleteTextView
android:id="@+id/autocomplete"
和:
AutoCompleteTextView autocomplete = view.findViewById(R.id.autocomplete);
autocomplete.setAdapter(adapter);