在RelativeLayout内部居中的垂直分隔线未显示

时间:2014-07-10 16:23:47

标签: android android-layout android-relativelayout

我有一个我用于横向模式的布局,左边是日历,右边是ViewPager。

在中心,我试图显示一个简单的垂直分隔线,但它没有出现。

请注意,出于性能原因,我必须使用RelativeLayout作为我的根布局,否则我可以将showDividers与LinearLayout一起使用。 (使用LinearLayout和showDividers时,垂直线会显示。)

以下是我正在使用的代码:

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <View
        android:id="@+id/center_divider"
        android:layout_width="1dp"
        android:layout_height="match_parent"
        android:layout_centerInParent="true"
        android:background="#f6f6f6" />

    <LinearLayout
        android:id="@+id/calendar"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        android:layout_alignParentLeft="true"
        android:layout_alignRight="@id/center_divider" />

    <android.support.v4.view.ViewPager 
        android:id="@+id/viewPager"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentRight="true"
        android:layout_alignLeft="@id/center_divider" />   

</RelativeLayout>

1 个答案:

答案 0 :(得分:1)

放手一搏

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <View
    android:id="@+id/center_divider"
    android:layout_width="1px"
    android:layout_height="0dp"
    android:layout_alignParentTop="true"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:background="#f6f6f6" />

    <LinearLayout
        android:id="@+id/calendar"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        android:layout_alignParentLeft="true"
        android:layout_toLeftOf="@id/center_divider" />

    <android.support.v4.view.ViewPager 
        android:id="@+id/viewPager"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_alignParentRight="true"
        android:layout_toRightOf="@id/center_divider" />   

</RelativeLayout>

当您对齐视图的两侧时,请使用0dp作为宽度。

另一个问题是您希望视图位于中心分隔符的右侧或左侧。

希望这有效!!