现在我在另一个视图中有layout_weight的视图,该视图也具有相同的属性,这会导致外部视图以指数方式计算。我正在考虑在内部视图内嵌入另一组具有权重的视图,但这会导致最外面的视图计算的次数比我想要的多。我只是将区域均匀地分开(组内的每个视图都具有相同的权重),但我希望所有内容都能正确缩放,无论屏幕大小或DPI如何。有没有其他方法可以在另一个视图中有效地分割视图?
答案 0 :(得分:2)
DeeV对this question的回答做得很好:
将
LinearLayout
与RelativeLayout
交换,并将两个孩子对齐到中心的>隐身View
,如下所示:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/top"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/center_point"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_centerInParent="true"/>
<LinearLayout
android:id="@+id/left_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignRight="@+id/center_point>
</Linearlayout>
<LinearLayout
android:id="@+id/right_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:layout_alignLeft="@+id/center_point>
</Linearlayout>
</RelativeLayout>