layout_below在RelativeLayout中不起作用

时间:2015-01-23 15:06:34

标签: android android-relativelayout

在下面的XML布局中,我试图让每个值(accXValue,accYValue,accZValue)出现在各自标签的右侧,如下面的代码所示。

在运行时,所有值都放在(tv_accX_label)右侧,所有值相互重叠并位于一个位置,尽管我指定了属性layout_below

请让我知道我错过了什么。

XML

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView 
    android:id="@+id/tv_accX_label"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:text="Acc[X]: "/>
<TextView 
    android:id="@+id/tv_accX_value"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/tv_accX_label"/>

<TextView 
    android:id="@+id/tv_accY_label"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_below="@+id/tv_accX_label"
    android:text="Acc[Y]: "/>
<TextView 
    android:id="@+id/tv_accY_value"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toEndOf="@+id/tv_accY_label"/>

<TextView 
    android:id="@+id/tv_accZ_label"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_below="@+id/tv_accY_label"
    android:text="Acc[Z]: "/>
<TextView 
    android:id="@+id/tv_accZ_value"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toEndOf="@+id/tv_accZ_label"/>

<Button 
    android:id="@+id/btn_send"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/tv_accZ_label"
    android:gravity="center_vertical|center_horizontal"
    android:text="send to frag_2"/>

1 个答案:

答案 0 :(得分:2)

valueY 实际显示在rightOf labelY 上。您只是没有在上提供below属性,这就是为什么它们堆叠在一起的原因。这是如何:

VALUE年:

<TextView
    android:text="RIGHT"
    android:id="@+id/tv_accY_value"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/tv_accX_value"
    android:layout_toRightOf="@+id/tv_accY_label"
    android:layout_toEndOf="@+id/tv_accY_label"/>

valueZ:

<TextView
    android:text="BELOW"
    android:id="@+id/tv_accZ_value"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/tv_accY_label"
    android:layout_toRightOf="@+id/tv_accY_label"
    android:layout_toEndOf="@+id/tv_accY_label"/>