相对布局:layout_below是一个CenterVertical元素

时间:2018-04-08 16:17:18

标签: android alignment android-relativelayout

当我想在具有属性的元素下面创建按钮时,我遇到了问题

android:layout_centerVertical="true"

textview垂直居中,按钮应位于其下方 但事实并非如此

我的XML代码段如下:

        <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@android:color/darker_gray">

        <ImageView
            android:id="@+id/headerImage"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:scaleType="centerCrop"/>

        <View
            android:layout_width="match_parent"
            android:background="@color/ecommerce1Foreground"
            android:layout_height="200dp"/>

        <TextView
            android:id="@+id/title"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="4dp"
            android:layout_centerVertical="true"
            android:gravity="center_horizontal"
            android:text="ZARA WOMEN DRESS"
            android:textColor="@android:color/white"
            android:textSize="18sp"
            android:textStyle="bold" />

        <Button
            android:id="@+id/buttonShopNow"
            style="@style/ButtonYellow"
            android:layout_width="wrap_content"
            android:layout_height="32dp"
            android:layout_centerHorizontal="true"
            android:layout_below="@id/title"
            android:layout_marginTop="8dp"
            android:text="SHOP NOW"
            android:textColor="@android:color/white"
            android:textSize="12sp" />

    </RelativeLayout>

1 个答案:

答案 0 :(得分:1)

首先,如果你有一个固定的高度。将它交给父母,即使你的相对布局高度为200dp。之后,您必须在Button

中使用@ + id / title