在 PercentRelativeLayout 中使用 dp 宽度

Use dp width in PercentRelativeLayout

当我尝试在 PercentRelativeLayout 中添加没有 "widthPercent" 或 "heightPercent" 的视图时,该视图没有显示。

我想要这个的原因是在我的 PercentRelativeLayout 的 2 个元素之间添加一个宽度为 1dp 的分隔符。

我使用的布局是这样的:

<android.support.percent.PercentRelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <FrameLayout android:id="@+id/fragment_list_container"
        app:layout_widthPercent="30%"
        android:layout_height="match_parent"

        android:layout_toLeftOf="@+id/divider"
        android:layout_toStartOf="@+id/divider"/>

     <View android:id="@id/divider"
        android:layout_width="1dp"
        android:layout_height="match_parent"
        android:background="@drawable/detailed_list_divider"

        android:layout_toLeftOf="@+id/fragment_details_container"
        android:layout_toStartOf="@+id/fragment_details_container"/>

     <FrameLayout android:id="@id/fragment_details_container"
         app:layout_widthPercent="70%"
         android:layout_height="match_parent"

         android:layout_alignParentRight="true"
         android:layout_alignParentEnd="true"

         android:paddingBottom="@dimen/base_activity_padding"
         android:paddingRight="@dimen/base_activity_padding"
         android:paddingLeft="@dimen/base_activity_padding" />

</android.support.percent.PercentRelativeLayout>

如果我在分隔符处将 "layout_widthPercent" 设置为 1%,它就会显示出来。但我希望它只需要 1dp。他们是实现这一目标的方法吗?

谢谢!

我找到了一种方法来实现我的目标,但我不太喜欢它(不是很干净)所以我 post 在这里,如果没有人给我任何更好的解决方案,我会把它添加为回答。

我所做的是添加一个 widthPercent 为 1% 的 RelativeLayout,其中包含我的 1dp 视图。像这样:

<android.support.percent.PercentRelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <FrameLayout android:id="@+id/fragment_list_container"
        app:layout_widthPercent="30%"
        android:layout_height="match_parent"

        android:layout_toLeftOf="@+id/divider"
        android:layout_toStartOf="@+id/divider"/>

    <RelativeLayout android:id="@id/divider"
        app:layout_widthPercent="1%"
        android:layout_height="match_parent"

        android:layout_toLeftOf="@+id/fragment_details_container"
        android:layout_toStartOf="@+id/fragment_details_container">

        <View
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="@drawable/detailed_list_divider" />

     </RelativeLayout>

     <FrameLayout android:id="@id/fragment_details_container"
         app:layout_widthPercent="70%"
         android:layout_height="match_parent"

         android:layout_alignParentRight="true"
         android:layout_alignParentEnd="true"

         android:paddingBottom="@dimen/base_activity_padding"
         android:paddingRight="@dimen/base_activity_padding"
         android:paddingLeft="@dimen/base_activity_padding" />

</android.support.percent.PercentRelativeLayout>

如果您有更好的想法,请告诉我。