2012-09-21 5 views
48

Aquí está mi diseño:Cómo hacer EditarTexto Altura de la caja Expandir

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <EditText 
     android:id="@+id/etTweetReview" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="10dp" 
     android:layout_marginLeft="10dp" 
     android:layout_marginRight="10dp" 
     android:ems="10" 
     android:hint="Discuss up to 140 characters" 
     android:imeOptions="actionDone" 
     android:inputType="textCapSentences" 
     android:lines="2" 
     android:maxLength="140" 
     android:paddingBottom="10dp" 
     android:singleLine="false" /> 

    <Button 
     android:id="@+id/theReviewBarButton" 
     android:layout_width="200dp" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginBottom="5dp" 
     android:text="Submit Review" 
     android:textSize="22sp" /> 

    <Spinner 
     android:id="@+id/spinnerSort" 
     android:layout_width="120dp" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="5dp" /> 

    <ListView 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/android:list" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_marginLeft="5dp" 
     android:scrollbars="none" 
     android:layout_marginRight="5dp" 
     android:layout_marginTop="8dp" > 
    </ListView> 

</LinearLayout> 

Cuando esa caja EditarTexto llega al final, lo quiero para envolver a la línea siguiente. En este momento, simplemente sigue moviendo todo lo que queda fuera de la pantalla.

+1

Posible duplicado de [Android Word-Wrap EditText text] (http://stackoverflow.com/questions/3276380/android-word-wrap-edittext-text) – blahdiblah

Respuesta

97

Ya se ha preguntado y respondido anteriormente.

Android Word-Wrap EditText text

Ejemplo de código XML:

<EditText 
    android:id="@+id/edtInput" 
    android:layout_width="0dip" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:hint="@string/compose_hint" 
    android:inputType="textCapSentences|textMultiLine" 
    android:maxLength="2000" 
    android:maxLines="4" /> 
+7

Miré otras respuestas pero me perdí la mayor cosa: gracias 'textMultiLine', marcando la correcta. – KickingLettuce

+0

android: layout_height = "wrap_content" android: inputType = "textCapSentences | textMultiLine" this will makes work –

+0

Gran atributo que no conozco. Pensando en actualizar las líneas máximas de forma dinámica en función del recuento de cadenas. –

25

Supongamos que lo que desea es tener una línea al principio y luego expandirlo a 5 líneas y desea tener un máximo de 10 líneas.

<EditText 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:id="@+id/etMessageBox" 
        android:layout_alignParentLeft="true" 
        android:layout_centerVertical="true" 
        android:autoLink="all" 
        android:hint="@string/message_edit_text_hint" 
        android:lines="5" 
        android:minLines="1" 
        android:gravity="top|left" 
        android:maxLines="10" 
        android:scrollbars="none" 
        android:inputType="textMultiLine|textCapSentences"/> 

Al aumentar android:lines puede definir expandirla el número de líneas.

+0

¿Qué sucede si queremos comenzar con 4 líneas y hacer que el texto se desplace hacia arriba cuando el usuario ingresó más de 4 líneas de texto? – Ivan

3

tratar este código

<EditText 
    android:id="@+id/"edittext01" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:inputType="textCapSentences|textMultiLine" 
    android:maxLength="100" 
    android:maxLines="10"/> 
+1

Sería realmente bueno si pudieras agregar algunos comentarios para agregar contexto a esta respuesta. –

0

Eliminar a esta línea de formar su EditarTexto

android:inputType="textCapSentences" 

y añadir esta línea con el número de líneas requeridas por el que

android:lines="2" 

la esperanza que esto le ayuda

3

Sólo tiene que añadir androide: líneas = "6" a su EditarTexto

<Edittext 
     android:id="@+id/edt_address" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:inputType="textMultiLine" 
     android:maxLines="6"    
     android:lines="6" 
     android:layout_marginTop="@dimen/activity_vertical_margin" 
     android:gravity="left"/> 
0

necesita que su altura EditText establecido en android:layout_height="wrap_content"

&

android:lines="5" 

Esto hizo el truco para mí en el interior ConstraintLayout

Cuestiones relacionadas