0

我有以下相对布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center" 
android:orientation="vertical">

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

<TextView
    android:id="@+id/tv2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="TextView"
    android:layout_alignLeft="@id/button1"/>

<TextView
    android:id="@+id/tv1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="TextView"
    android:layout_alignRight="@id/button1" />
</RelativeLayout>

<Button
    android:id="@+id/button1"
    android:layout_width="200dp"
    android:layout_height="wrap_content"
    android:text="Button" />

</LinearLayout>

但这并没有给我我希望实现以下目标的结果:

tv1--------------tv2
|-----按钮------|

所以,我希望 textview1 从按钮的左角开始,而 textview2 在按钮的右边缘结束。

我怎样才能做到这一点?

4

4 回答 4

2
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center" 
android:orientation="vertical">

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

<TextView
    android:id="@+id/tv2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="TextView"
    android:layout_alignLeft="@+id/button1"/>

<TextView
    android:id="@+id/tv1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="TextView"
    android:layout_alignRight="@+id/button1" />

<Button
    android:id="@+id/button1"
    android:layout_width="200dp"
    android:layout_height="wrap_content"
    android:text="Button"
    android:layout_below="@+id/tv1" />
</RelativeLayout>  

</LinearLayout>
于 2012-09-17T13:34:35.220 回答
0

试试这个

  <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:gravity="center" 
 android:orientation="vertical">

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

 <TextView
     android:id="@+id/tv2"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="TextView"
     android:layout_alignParentLeft="true"/>

 <TextView
     android:id="@+id/tv1"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="TextView"
     android:layout_alignParentRight="true"/>
 </RelativeLayout>

 <Button
     android:id="@+id/button1"
     android:layout_width="200dp"
     android:layout_height="wrap_content"
     android:text="Button" />

 </LinearLayout>
于 2012-09-17T13:31:13.307 回答
0

将按钮放在您的相对布局中。然后将其添加到按钮 xml 属性中 -

android:layout_below="@+id/tv1"

对于 tv1 文本视图,添加 -

android:layout_alignLeft="button1"

对于 tv2 textview,添加 -

android:layout_alignRight="button1"
于 2012-09-17T13:31:45.730 回答
0

试试这个

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center" 
android:orientation="vertical">

<RelativeLayout
   android:layout_width="match_parent"
   android:layout_height="wrap_content" >

 <TextView
     android:id="@+id/tv2"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="TextView"
     android:layout_alignParentRight="true"/>

 <TextView
     android:id="@+id/tv1"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="TextView"
     android:layout_alignParentLeft="true"
     android:layout_toLeftOf="@id/tv2"/>
 </RelativeLayout>


<Button
    android:id="@+id/button1"
    android:layout_width="200dp"
    android:layout_height="wrap_content"
    android:text="Button" />

</LinearLayout>

您需要为 tv1 设置 android:layout_toLeftOf="@id/tv2" 或为 tv2 设置 android:layout_toRightOf="@id/tv1" 以停止相互重叠。

于 2012-09-17T13:34:32.903 回答