如何让Android layout_weight工作?

时间:2014-06-12 02:14:08

标签: android-layout android-layout-weight

我对Android的布局缩放/定位感到非常沮丧。我无法让操作系统正常运行并且称重了#34;我的布局。基本布局是LinearLayout,子布局正确设置权重。但是当它运行时,这些比例并没有得到维持。例如:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#38921c">

    <LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="0px"
    android:layout_weight="0.1"
    android:orientation="vertical"
    android:layout_centerVertical="true">

...(视图省略)

    </LinearLayout>

    <LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="0px"
    android:layout_weight="0.2"
    android:orientation="vertical"
    android:layout_centerVertical="true">
            <ImageView
        android:id="@+id/imageView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/zero" />

            <ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/zero" />

    </LinearLayout>

    <LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="0px"
    android:layout_weight="0.7"
    android:orientation="vertical"
    android:layout_centerVertical="true">

...(视图省略)

    </LinearLayout>
</LinearLayout>

当我运行时,屏幕(平板电脑和手机)给第二个(0.2重量)布局留出太多空间,并将下面的布局挤压到太小的空间。关于使用layout_weight进行正确缩放,我错过了什么?感谢。

1 个答案:

答案 0 :(得分:0)

android:layout_weight用于指定多个视图之间的大小比率。

在这种情况下,您似乎有多个视图。在确定了为每个视图分配了多少百分比的屏幕后,您可以设置它。

示例:您希望将屏幕划分为3,分别为2 / 10,3 / 10和5/10(屏幕的一半),然后按顺序重量为2,3,5。(例如android:layout_weight =“2”)

重要事项:要使其正常工作,您还必须将高度或宽度(取决于您的方向)设置为0px。否则,所有重量测量将被假定为垃圾。