1
resposta

Edit Text Scrollavel

Estava refazendo o app com técnicas adicionais para fixar ainda mais e empaquei em fazer um edit text ser scrollavel.

Mesmo liberando ele para poder scrollar ele ainda não vai. A impressão que da é que o scrollview da acitivity passar por cima do edit text e não deixa ele scrollar.

segue o código do meu edit text dentro do layout

<com.google.android.material.textfield.TextInputLayout
            android:id="@+id/formulario_recipe_InputLayout_ingredientes"
            style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginTop="14dp"
            android:hint="@string/ingredientes"
            app:layout_constraintEnd_toEndOf="@+id/formulario_recipe_InputLayout_titulo"
            app:layout_constraintStart_toStartOf="@+id/formulario_recipe_InputLayout_titulo"
            app:layout_constraintTop_toBottomOf="@+id/formulario_recipe_InputLayout_titulo">

            <com.google.android.material.textfield.TextInputEditText
                android:id="@+id/formulario_recipe_EditText_ingredientes"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="top"
                android:inputType="textMultiLine"
                android:lines="6"
                android:overScrollMode="always"
                android:scrollbarAlwaysDrawVerticalTrack="true"
                android:scrollbarStyle="insideInset"
                android:scrollbars="vertical"/>
        </com.google.android.material.textfield.TextInputLayout>
1 resposta

Olá, Gabriel!

Pelo código que você compartilhou, parece que você está utilizando o TextInputLayout juntamente com o TextInputEditText para criar o seu EditText scrollável. No entanto, o problema pode estar relacionado à hierarquia de views no seu layout.

Uma solução possível é envolver todo o conteúdo do seu layout em um ScrollView, permitindo que o EditText seja scrollável mesmo com o TextInputLayout. Veja um exemplo de como ficaria o seu código com essa alteração:

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <com.google.android.material.textfield.TextInputLayout
            android:id="@+id/formulario_recipe_InputLayout_ingredientes"
            style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="14dp"
            android:hint="@string/ingredientes">

            <com.google.android.material.textfield.TextInputEditText
                android:id="@+id/formulario_recipe_EditText_ingredientes"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="top"
                android:inputType="textMultiLine"
                android:lines="6"
                android:overScrollMode="always"
                android:scrollbarAlwaysDrawVerticalTrack="true"
                android:scrollbarStyle="insideInset"
                android:scrollbars="vertical" />

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

        <!-- Outros elementos do seu layout -->

    </LinearLayout>

</ScrollView>

Com essa alteração, o ScrollView irá permitir que você role o conteúdo da tela, incluindo o EditText, caso necessário.

Espero ter ajudado e bons estudos!