Android: wyrównanie pionowe dla wielu linii EditText (obszar tekstu)

Chcę mieć 5 linii dla wysokości obszaru tekstu. Używam poniższego kodu.

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

Obszar tekstu wygląda dobrze, ale problem polega na tym, że kursor miga w środku pola tekstowego. Chcę, aby migała w pierwszej linii, przy pierwszym znaku pola tekstowego.

Author: JJD, 2010-03-15

7 answers

Użyj android:gravity="top"

 350
Author: CommonsWare,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-03-15 13:01:24

Jest to podobne do odpowiedzi CommonsWare, ale z drobną poprawką: android:gravity="top|left". Przykład pełnego kodu:

<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
Author: Nandagopal T,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-22 19:34:33

U można użyć tego Edittext....To ci pomoże.

<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
Author: Denny Sharma,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-11 04:47:33

Użyj tego:

android:gravity="top"

Lub

android:gravity="top|left"
 9
Author: Samir Mangroliya,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-04-17 22:01:17
<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" />

To zadziała

 6
Author: Asad Rao,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-29 07:48:05

Myślę, że możesz użyć layout:weight = 5 zamiast android:lines = 5, ponieważ po przeniesieniu aplikacji na mniejsze urządzenie-robi to ładnie.. cóż, oba atrybuty spełnią Twoją pracę..

 2
Author: Sanjay Herle,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-05-22 03:27:54

Teraz dzienne użycie grawitacjistart najlepiej wybrać:

android:gravity="start"

Dla 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
Author: Hasib Akter,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-28 12:35:36