2014-06-11 2 views
-3

J'ai un problème dans android:layout_toRightOf il me donne Invalid layout param est-il un moyen d'ajouter ce paramètre au projet?Android mise en page xml: toRightOf

qui est le code

<TextView 
    android:id="@+id/text1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_toRightOf="@id/text2" 
    android:background="@color/red"/> 
+0

En utilisant RelativeLayout? – Raghunandan

+0

non linearLayout – user3100088

+2

'LinearLayout' n'a pas cet attribut. Utilisez 'RelativeLayout'. Chek les docs. Si vous l'aviez, vous n'auriez pas posté cette question – Raghunandan

Répondre

3

Vous avez besoin Texte1 et text2 à la fois être des enfants du même parent RelativeLayout.

<RelativeLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
    <TextView 
     android:id="@+id/text1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_toRightOf="@id/text2" 
     android:background="@color/red"/> 
    <TextView 
     android:id="@+id/text2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"/> 
</RelativeLayout> 
+0

Cela ne fonctionnera-t-il pas avec LinearLayout? – user3100088

+0

Si vous utilisez LinearLayout, vous ne pouvez pas utiliser toRightOf ... qui est une propriété UNIQUEMENT pour RelativeLayouts. Linéaires Layouts comme son nom l'indique pose les objets dans l'ordre horizontal ou vertical. Le RelativeLayouts est celui qui relie les objets à son parent ou à un autre objet. –

+1

Non, ce ne sera pas le cas. Vous ne pouvez pas utiliser toRightOf dans une disposition linéaire. "Right of" ou "left of" sont relatifs - c'est pourquoi on appelle cela une disposition relative. La position de text1 est relative à text2. –

0

Vous ne pouvez pas utiliser cette propriété layout_toRightof dans LinearLayout. Vous utilisez la mise en page relative et comme son nom est relatif, vous devez définir la position de votre texte1 par rapport à une autre vue peut être text2 dans votre cas. définir ainsi votre mise en page de text1 comme

android:layout_toRightof="@+id/text2" 

et déclarer une autre texte2 comme

<TextView 
    android:id="@+id/text2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"/>