Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在提供固定百分比权重时获得不同的布局宽度_Android_Android Layout - Fatal编程技术网

Android 在提供固定百分比权重时获得不同的布局宽度

Android 在提供固定百分比权重时获得不同的布局宽度,android,android-layout,Android,Android Layout,虽然我指定了固定的布局权重,但我看到了不同的布局权重 从下面的代码中,您可以看到statusLinearLayout将布局权重设置为0.2,剩余空间由其他布局设置 我使用下面的布局为回收项目 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_con

虽然我指定了固定的布局权重,但我看到了不同的布局权重

从下面的代码中,您可以看到statusLinearLayout将布局权重设置为0.2,剩余空间由其他布局设置

我使用下面的布局为回收项目

<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:orientation="horizontal"
        android:id="@+id/mainLinearLayout">
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:orientation="vertical"
            android:layout_weight="0.2"
            android:id="@+id/statusLinearLayout">
            <TextView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:gravity="center"
                android:id="@+id/statusTextView" />
        </LinearLayout>
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:layout_weight="0.8">
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:id="@+id/pNameTextView" />
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:id="@+id/hNameTextView" />
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="horizontal">
                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:gravity="center"
                    android:id="@+id/sTypeTextView" />
                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:gravity="center"
                    android:layout_weight="1"
                    android:id="@+id/dateTextView" />
            </LinearLayout>
        </LinearLayout>
    </LinearLayout>
    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="@color/colorPrimary"
        android:layout_below="@+id/mainLinearLayout"/>
</RelativeLayout>

以下是我在emulator中获得的UI:

如何使我的statusLinearLayout具有固定长度而不是可变长度?

试试这个

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/mainLinearLayout"
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:orientation="horizontal">

        <LinearLayout
            android:id="@+id/statusLinearLayout"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="0.2"
            android:orientation="vertical">

            <TextView
                android:id="@+id/statusTextView"
                android:text="nilesh"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:gravity="center" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.8"
            android:orientation="vertical">

            <TextView
                android:id="@+id/pNameTextView"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="nilesh"
                android:gravity="center" />

            <TextView
                android:id="@+id/hNameTextView"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="nilesh"
                android:gravity="center" />

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:orientation="horizontal">

                <TextView
                    android:id="@+id/sTypeTextView"
                    android:layout_width="0dp"
                    android:text="nilesh"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:gravity="center" />

                <TextView
                    android:id="@+id/dateTextView"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:text="nilesh"
                    android:gravity="center" />
            </LinearLayout>
        </LinearLayout>
    </LinearLayout>

    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:layout_below="@+id/mainLinearLayout"
        android:background="@color/colorPrimary" />
</RelativeLayout>

结果


尝试使用android:layout\u width=“0dp”而不是将两个linearlayout的内容包装在两个linearlayout布局中,当您在该宽度中添加权重时,该宽度必须为“0dp”,谢谢大家,这很有效。