2011-05-24 1 views
6

je le ImageView suivant et TextView: enter image description hereComment puis-je aligner mon ImageView avec mon TextView dans un LinearLayout?

Voici le 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> 

Comment puis-je faire l'image et le texte sont positionnés à la même hauteur? Je veux aussi le ImageView d'être dans le coin

+1

double possible de [Android: Utilisation alignBaseline pour une image de texte suivant] (http://stackoverflow.com/questions/5102532/android-using-alignbaseline-pour-un-image-suivant-texte) –

Répondre

16

Essayez ceci:

<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

Ce genre de travaux, mais l'image n'est toujours pas dans le coin supérieur, et le texte chevauche l'image un peu. –

+0

Désolé. J'ai raté la phrase "coin supérieur". Pour résoudre ce problème, j'ai supprimé 'android: layout_centerVertical'. Le chevauchement a eu lieu parce que j'ai mis mauvais identifiant dans 'android: layout_toRightOf'. Maintenant tout est fixé. Bonne chance. – pawelzieba

5

Voici une solution simple qui fonctionne bien. Essential ici est d'ajouter: android: layout_gravity = "center_vertical" à 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

Veuillez décrire votre réponse également. –

Questions connexes