2011-05-24 18 views
6

tengo el siguiente ImageView y TextView: enter image description here¿Cómo puedo alinear mi ImageView con mi TextView en LinearLayout?

Aquí es el XML:

<LinearLayout android:layout_height="wrap_content" android:layout_width="match_parent" android:id="@+id/headerLinearLay" android:orientation="horizontal"> 
     <ImageView android:src="@drawable/icon" android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/avatarImageView"></ImageView> 
     <TextView android:layout_height="wrap_content" android:id="@+id/usernameTextView" android:text="TextView" android:layout_width="wrap_content" android:paddingLeft="4px"></TextView> 
    </LinearLayout> 

¿Cómo puedo hacer que la imagen y el texto se colocan a la misma altura? También quiero ImageView para estar en la esquina

+1

Posible duplicado de [Android: Usando alignBaseline para una imagen siguiente texto] (http://stackoverflow.com/questions/5102532/android-using-alignbaseline-for-an-image-following-text) –

Respuesta

16

Prueba esto:

<RelativeLayout 
    android:layout_height="wrap_content" 
    android:layout_width="fill_parent" 
    android:id="@+id/headerLinearLay"> 
    <ImageView 
     android:id="@+id/avatarImageView" 
     android:src="@drawable/icon" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content"></ImageView> 
    <TextView 
     android:id="@+id/usernameTextView" 
     android:text="TextView" 
     android:paddingLeft="4dp" 
     android:layout_toRightOf="@id/avatarImageView" 
     android:layout_centerVertical="true" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content"></TextView> 
</RelativeLayout> 
+0

Ese tipo de trabajo funciona, pero la imagen aún no está en la esquina superior, y el texto se superpone un poco a la imagen. –

+0

Lo siento. Me perdí la oración de "esquina superior". Para solucionarlo, eliminé 'android: layout_centerVertical'. La superposición tuvo lugar porque puse la identificación incorrecta en 'android: layout_toRightOf'. Ahora todo está arreglado. Buena suerte. – pawelzieba

5

Aquí es una solución simple que funciona bien. Esencial aquí es añadir: android: layout_gravity = "center_vertical" a TextView

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" > 

<ImageView 
    android:id="@+id/imageView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/icon" /> 

    <TextView 
     android:id="@+id/usernameTextView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical" /> 

    </LinearLayout> 
0
<TextView 
    android:id="@+id/textView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:text="TextView" 
    android:layout_weight="0.04" /> 

<ImageView 
    android:id="@+id/imageView" 
    android:layout_width="204dp" 
    android:layout_height="200dp" 
    app:srcCompat="@mipmap/ic_launcher" /> 
+4

Por favor, describa también su respuesta. –

Cuestiones relacionadas