Android: Alinhamento vertical para Multi Line EdittExt (área de texto)
-
20-09-2019 - |
Pergunta
Eu quero ter 5 linhas para a altura da área de texto. Estou usando o seguinte código.
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:singleLine="false"
android:lines="5"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip" />
A área de texto parece boa, mas o problema é que o cursor está piscando no meio do campo de texto. Eu quero que pisque na primeira linha, no primeiro caractere do campo de texto.
Solução
Usar android:gravity="top"
Outras dicas
Isso é semelhante à resposta do Commonsware, mas com um pequeno ajuste: android:gravity="top|left"
. Exemplo de código completo:
<EditText
android:id="@+id/EditText02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:lines="5"
android:gravity="top|left"
android:inputType="textMultiLine"
android:scrollHorizontally="false"
/>
Você pode usar este edittext .... isso o ajudará.
<EditText
android:id="@+id/EditText02"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:lines="5"
android:gravity="top|left"
android:inputType="textMultiLine" />
Usa isto:
android:gravity="top"
ou
android:gravity="top|left"
<EditText android:id="@+id/EditText02" android:layout_width="120dp"
android:layout_height="wrap_content" android:lines="5" android:layout_centerInParent="true"
android:gravity="top|left" android:inputType="textMultiLine"
android:scrollHorizontally="false" android:minWidth="10.0dip"
android:maxWidth="180dip" />
vai funcionar
Eu acho que você pode usar layout:weight = 5
em vez de android:lines = 5
Porque quando você portar seu aplicativo para um dispositivo menor - faz isso bem ... bem, ambos os atributos realizarão seu trabalho ..
Agora um uso diário da gravidade start
é a melhor escolha:
android:gravity="start"
Para EdittExt (textarea):
<EditText
android:id="@+id/EditText02"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:lines="5"
android:gravity="start"
android:inputType="textMultiLine"
/>