【问题标题】:Layout weight in relative layout相对布局中的布局权重
【发布时间】:2014-01-12 15:01:02
【问题描述】:

我知道线性布局中的布局权重。我可以在相对布局中分配布局权重吗?

示例:布局中的两个图像视图以 60:40 的比例填充布局。第一张图片应占整个屏幕高度的 60%,第二张图片必须占屏幕剩余的 40%。

不要只回答这个示例问题,请准确告诉我这个概念或发布一些关于相对布局中布局权重的参考链接。提前致谢。

【问题讨论】:

标签: android android-layout android-relativelayout


【解决方案1】:

您可以在布局的中心放置一个不可见的视图,并将视图左右对齐。这是一个例子

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_toLeftOf="@+id/view"
        android:background="#fffba2" />

    <View 
        android:id="@+id/view"
        android:layout_width="1dp"
        android:layout_height="1dp"
        android:layout_centerHorizontal="true"
        android:visibility="invisible" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_toRightOf="@+id/view"
        android:background="#ba2fff" />

</RelativeLayout>

【讨论】:

    【解决方案2】:

    相对布局不需要权重。您可以四处移动图像视图以确保它们的比例正确。权重仅用于 LinearLayout。

    【讨论】:

      【解决方案3】:

      实际上,您不能在 RelativeLayout 中使用 weight,但您可以结合使用相对布局和线性布局,以充分利用它们!

      提示:尝试使用尽可能少的布局以避免 UI 变慢,因为要进行多次屏幕测量! [1][2]

      【讨论】:

        最近更新 更多