Search code examples
androidkotlinautocompletetextviewmaterial-components-androidandroid-textinputlayout

Android: View.Gone not working for AutoCompleteTextview as ExposedDropdownMenu


I have an ExposedDropDownMenu as a Spinner as recommended from Material.IO. My problem is that, View.Gone does not work and leaves an arrow in the view and therefore still occupies space.

Screenshot

View not gone

XML

<com.google.android.material.textfield.TextInputLayout
    style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense.ExposedDropdownMenu"
    android:layout_width="0dp"
    android:layout_height="wrap_content">
<AutoCompleteTextView
    android:id="@+id/calibrate_message_dropdown_menu_TWO"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="none"
    tools:ignore="LabelFor" />

</com.google.android.material.textfield.TextInputLayout>

Code

calibrate_message_dropdown_menu_TWO.visibility = View.GONE

I appreciate any help. Thank you!


Solution

  • Can you try hiding the TextInputLayout instead of the contained AutoCompleteTextView. Add an id for the outer TextInputLayout like this:

    <com.google.android.material.textfield.TextInputLayout
        style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense.ExposedDropdownMenu"
        android:id="@+id/dropdown_layout"
        android:layout_width="0dp"
        android:layout_height="wrap_content">
    
    <AutoCompleteTextView
        android:id="@+id/calibrate_message_dropdown_menu_TWO"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="none"
        tools:ignore="LabelFor" />
    
    </com.google.android.material.textfield.TextInputLayout>
    

    and then in code:

    dropdown_layout.visibility = View.GONE