2012-04-16 8 views
16

Creé un LinearLayout como el siguiente con TextView. El texto es variable Si los Elementos se vuelven más grandes que el ancho de Diseño, se vuelve desagradable. Quiero que el texto fluya a una nueva línea, solo una haría cuando escriba un libro. es posible?Android: Linear Layout new Line

<LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" > 

<TextView 
      android:id="@+id/textView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="xx" 
      android:textAppearance="?android:attr/textAppearanceSmall" /> 

<EditText ...> 

<TextView 
      android:id="@+id/textView2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="xx" 
      android:textAppearance="?android:attr/textAppearanceSmall" /> 
</LinearLayout> 

edición

así:

  1. textview1text EditarTexto textview2
  2. textview2continuesin2ndrow

no como este:

  1. textview1text EditarTexto textview2text
  2. textview1cont
+0

No estoy seguro de que se ajuste a su diseño, pero probablemente pueda resolver el problema que está describiendo al configurar (p. igual) pesos a los tres elementos en el 'LinearLayout' (y sus anchuras a' 0dp'). –

Respuesta

18

Pruebe algo como ...

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 
    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" > 
     <TextView 
      android:id="@+id/textView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="xx" 
      android:textAppearance="?android:attr/textAppearanceSmall" /> 
     <EditText ...> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:orientation="vertical" > 
     <TextView 
      android:id="@+id/textView2" 
      android:layout_width="wrap_content" 
      android:layout_height="fill_parent" 
      android:text="xx" 
      android:textAppearance="?android:attr/textAppearanceSmall" /> 
    </LinearLayout> 
</LinearLayout> 
+5

¿no hay forma de lograr esto sin anidar LinearLayouts? –

+0

Intenta usar TableLayout. Solo necesita usar TableRow. – timmyt123

8

puede utilizar android:orientation="vertical" dentro LinearLayout para obtener los elementos en diferentes líneas

+0

Este método solo permite un artículo por línea. –

1

intentar algo como esto

<?xml version="1.0" encoding="utf-8"?> 
<android.widget.LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    tools:context="com.example.sushrut.recipedemo.MainActivity"> 

    <android.widget.LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:layout_marginBottom="40dp" 
     android:layout_marginTop="40dp" 
     android:orientation="horizontal" 
     tools:context="com.example.sushrut.recipedemo.MainActivity"> 

     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/cameraActionButton" 
      android:layout_width="68dp" 
      android:layout_height="68dp" 
      android:layout_gravity="center" 
      android:layout_marginBottom="20dp" 
      android:layout_marginLeft="20dp" 
      android:layout_marginRight="20dp" 
      android:layout_marginTop="20dp" 

      app:fabSize="normal" 
      app:srcCompat="@android:drawable/ic_menu_camera" /> 

     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/choiceActionBtn" 
      android:layout_width="68dp" 
      android:layout_height="68dp" 
      android:layout_gravity="center" 
      android:layout_marginBottom="20dp" 
      android:layout_marginLeft="20dp" 
      android:layout_marginRight="20dp" 
      android:layout_marginTop="20dp" 

      app:fabSize="normal" 
      app:srcCompat="@android:drawable/ic_input_add" /> 

    </android.widget.LinearLayout> 

    <android.widget.LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:orientation="horizontal" 
     tools:context="com.example.sushrut.recipedemo.MainActivity"> 

     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/addToLibraryBtn" 
      android:layout_width="68dp" 
      android:layout_height="68dp" 
      android:layout_gravity="center" 
      android:layout_marginBottom="20dp" 
      android:layout_marginLeft="20dp" 
      android:layout_marginRight="20dp" 
      android:layout_marginTop="20dp" 
      android:clickable="true" 
      app:fabSize="normal" 
      app:srcCompat="@android:drawable/ic_menu_save" /> 

     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/recipeBrowseBtn" 
      android:layout_width="68dp" 
      android:layout_height="68dp" 
      android:layout_gravity="center" 
      android:layout_marginBottom="20dp" 
      android:layout_marginLeft="20dp" 
      android:layout_marginRight="20dp" 
      android:layout_marginTop="20dp" 
      android:clickable="true" 
      app:fabSize="normal" 
      app:srcCompat="@android:drawable/btn_plus" /> 
    </android.widget.LinearLayout> 

</android.widget.LinearLayout>