Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

No lugar do ScrollView, Não deveria usar windowSoftInputMode="adjustResize" no Manifest?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Quando você define android:windowSoftInputMode="adjustResize" no AndroidManifest.xml, o sistema ajusta o tamanho da janela da atividade para garantir que todos os componentes visíveis permaneçam acessíveis quando o teclado virtual é exibido. Isso pode ser útil se você deseja que o layout da sua atividade se ajuste automaticamente sem a necessidade de um ScrollView.

Aqui estão algumas considerações sobre quando usar cada abordagem:

Usando windowSoftInputMode="adjustResize"

  • Simples de implementar: Basta adicionar o atributo no AndroidManifest.xml.
  • Bom para layouts simples: Funciona bem se o layout da atividade não for complexo e pode se ajustar sem muitos problemas.
  • Não exige modificações no layout: Não precisa alterar o layout XML da sua atividade. Exemplo no AndroidManifest.xml:
<activity
    android:name=".ui.activity.FormularioProdutoActivity"
    android:windowSoftInputMode="adjustResize"
    android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

Usando ScrollView

  • Melhor para layouts complexos: Se o layout da atividade for complexo e precisar de rolagem, um ScrollView é mais adequado.
  • Controle explícito: Dá a você mais controle sobre como e quando o conteúdo é rolado.
  • Pode exigir ajustes adicionais: Pode precisar de ajustes no layout XML para funcionar corretamente.

Exemplo de uso de ScrollView no layout XML:

<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <!-- Conteúdo do seu formulário -->

    </LinearLayout>
</ScrollView>

Escolhendo a Abordagem Correta

  • Para formulários simples: windowSoftInputMode="adjustResize" é geralmente suficiente e fácil de implementar.
  • Para formulários longos ou complexos: ScrollView pode ser uma melhor escolha para garantir que todo o conteúdo seja acessível e rolável. Se você tiver uma tela de formulário que é relativamente simples e não se estende além da altura da tela, adjustResize pode ser a solução mais simples. No entanto, se o formulário é longo e precisa de rolagem, um ScrollView seria mais apropriado.