android:layout_below不能在RelativeLayout

时间:2016-05-10 15:53:47

标签: android

我发布我的代码请帮帮我。我正在使用垂直方向的相对布局。

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Next"
    android:id="@+id/next"
    android:layout_marginTop="170dp"
    android:layout_alignParentRight="true"/>
<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Previous"
    android:id="@+id/previous"
    android:layout_marginTop="170dp"
    android:layout_alignParentLeft="true" />

<TextView
    android:id="@+id/day"
    android:textStyle="bold"
    android:textSize="30dp"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="20dp"/>

<ImageView
    android:id="@+id/product_image"
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="-50dp"/>

<TextView
    android:id="@+id/description"
    android:text="test"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:textSize="18dp"
    android:layout_below="@id/product_image"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="5dp"/>

1 个答案:

答案 0 :(得分:1)

在相对布局中,所有视图都应至少有一个锚点。您的图片视图没有任何内容。这一天也不是。它们可以相互锚定或与父视图锚定。如果你没有指定它就像一个框架视图,并将锚定到左上角。尽量不要依赖边距来进行布局,而是依赖于视图之间的填充 - 负边距通常是一个非常糟糕的主意。

尝试这样的事情:

<TextView
android:id="@+id/day"
android:textStyle="bold"
android:textSize="30dp"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
android:layout_marginTop="20dp"/>

<ImageView
android:id="@+id/product_image"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:layout_below="@id/day"
android:layout_centerHorizontal="true" />

<TextView
android:id="@+id/description"
android:text="test"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textSize="18dp"
android:layout_below="@id/product_image"
android:layout_marginLeft="10dp"
android:layout_marginRight="5dp"/>

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Next"
android:id="@+id/next"
android:layout_below="@id/description"
android:align_parentBottom="true"
android:layout_alignParentRight="true"/>

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Previous"
android:id="@+id/previous"
android:layout_below="@id/description"
android:align_parentBottom="true"
android:layout_alignParentLeft="true" />