还有其他方法可以

还有其他方法可以

现在,我在另一个具有相同属性的视图中具有layout_weight的视图,这导致外部视图以指数方式计算。我正在考虑在内部视图内部嵌套另一组具有权重的视图,但这将导致最外部视图的计算次数超过我想要的次数。我只是将区域均匀地划分(一组中的每个视图都具有相同的权重),但是无论屏幕的大小或DPI如何,我都希望所有内容都能正确缩放。还有其他方法可以有效地在另一个视图中拆分视图吗?

最佳答案

DeeV对this question的回答做得很好:


  用LinearLayout交换顶部的RelativeLayout,然后将两个子项与中间的> invisible 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>

09-16 19:24