在 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>
如果您有更好的想法,请告诉我。
当我尝试在 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>
如果您有更好的想法,请告诉我。