Android 带有2个ImageView和3个TextView的RealtiveLayout

Android 带有2个ImageView和3个TextView的RealtiveLayout,android,layout,Android,Layout,我想要一个像这样的长裤: 到目前为止,我得到了以下布局: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orie

我想要一个像这样的长裤:

到目前为止,我得到了以下布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:background="@drawable/game1_background"
     >

    <ImageView 
        android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:id="@+id/flag1"
        />
    <TextView
        android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
         android:layout_centerVertical="true"

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



        />

<TextView
        android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
         android:layout_centerVertical="true"

         android:id="@+id/team2"
        />
<ImageView 
        android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:id="@+id/flag2"
        />
</RelativeLayout>

但这是行不通的。有人能说为什么吗? 谢谢

试试这个:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:gravity="center_vertical"
    android:background="@drawable/game1_background">
  <ImageView 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/flag1"/>
  <TextView
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:id="@+id/team1"/>
  <TextView 
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"/>
  <TextView
     android:layout_width="wrap_content"
     android:layout_height="wrap_content" 
     android:id="@+id/team2"/>
  <ImageView 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/flag2"/>
</LinearLayout>

请注意参数:android:gravity=“center\u vertical”,它将垂直发送所有的孩子。

试试这个:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:gravity="center_vertical"
    android:background="@drawable/game1_background">
  <ImageView 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/flag1"/>
  <TextView
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:id="@+id/team1"/>
  <TextView 
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"/>
  <TextView
     android:layout_width="wrap_content"
     android:layout_height="wrap_content" 
     android:id="@+id/team2"/>
  <ImageView 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/flag2"/>
</LinearLayout>


请注意参数:android:gravity=“center\u vertical”,它将垂直发送所有的孩子。

我试图使其尽可能接近您所拥有的。我明白了:

这就是你需要做的

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
     >
    <ImageView 
        android:id="@+id/image1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_alignParentLeft="true"
        android:background="@drawable/ic_launcher"
            />
    <TextView
        android:id="@+id/text1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:layout_centerVertical="true"
        android:layout_toRightOf="@id/image1"
        android:text="Text1"
        />
    <TextView 
        android:id="@+id/text2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:layout_centerInParent="true"
        android:text="Text2"
        />

    <TextView
        android:id="@+id/text3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:layout_centerVertical="true"
        android:layout_toLeftOf="@id/image2"
        android:text="Text3"
        />
<ImageView 
        android:id="@+id/image2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_alignParentRight="true"
        android:background="@drawable/ic_launcher"
        />
</RelativeLayout>


使用
android:margin
android:padding
根据需要调整文本框位置

我试着让它尽可能接近你拥有的东西。我明白了:

这就是你需要做的

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
     >
    <ImageView 
        android:id="@+id/image1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_alignParentLeft="true"
        android:background="@drawable/ic_launcher"
            />
    <TextView
        android:id="@+id/text1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:layout_centerVertical="true"
        android:layout_toRightOf="@id/image1"
        android:text="Text1"
        />
    <TextView 
        android:id="@+id/text2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:layout_centerInParent="true"
        android:text="Text2"
        />

    <TextView
        android:id="@+id/text3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:layout_centerVertical="true"
        android:layout_toLeftOf="@id/image2"
        android:text="Text3"
        />
<ImageView 
        android:id="@+id/image2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_alignParentRight="true"
        android:background="@drawable/ic_launcher"
        />
</RelativeLayout>


使用
android:margin
android:padding
根据需要调整文本框位置

使用
RelativeLayout
您必须执行以下操作


请根据您的规格调整尺寸


RelativeLayout具有一组不同的属性,可用于在屏幕内定位视图,它易于学习且灵活,请参阅以了解更多信息。

使用
RelativeLayout
您必须执行类似操作


请根据您的规格调整尺寸


RelativeLayout有一组不同的属性,可用于在屏幕内定位视图,它易于学习且灵活,请参阅以了解更多信息。

关于为什么只使用相对布局的任何具体原因,我认为这可以使用线性布局轻松完成。我认为这会更好。但是我想它也适用于线性布局。关于为什么只使用相对布局的任何具体原因,我认为使用线性布局很容易做到。我认为这样会更好。但我想它也适用于线性布局