web-dev-qa-db-fra.com

Android: alignement vertical pour plusieurs lignes EditText (zone de texte)

Je veux avoir 5 lignes pour la hauteur de la zone de texte. J'utilise le code suivant.

<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" />

La zone de texte semble correcte, mais le problème est que le curseur clignote au milieu du champ de texte. Je veux qu'il clignote à la première ligne, au premier caractère du champ de texte.

221
d-man

Utilisez Android:gravity="top"

355
CommonsWare

Ceci est similaire à la réponse CommonsWare mais avec un Tweak mineur: Android:gravity="top|left". Exemple de code complet:

<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" 
/>
92
Nandagopal T

Vous pouvez utiliser cet Edittext .... Cela vous aidera. 

<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" />
17
Denny Sharma

Utilisez ceci:

Android:gravity="top"

ou

Android:gravity="top|left"
9
Samir Mangroliya
<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" />

ça va marcher

6
Asad Rao

Je pense que vous pouvez utiliser layout:weight = 5 à la place de Android:lines = 5, car lorsque vous portez votre application sur un périphérique plus petit, tout se passe bien. Les deux attributs vous permettront d'accomplir votre travail. 

2
Sanjay Herle

Maintenant, une utilisation quotidienne de la gravité start est le meilleur choix:

Android:gravity="start"

Pour 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"
/>
0
Hasib Akter