android布局列表视图的动态宽度



在我的布局中,我有5个列表视图,它们挨在一起以匹配屏幕大小,这样每个视图的宽度都是屏幕宽度的1/5。匹配父项不起作用,因为这样每个列表视图都和屏幕一样大。

实际上我用这个:

<ScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/scrollView"
            android:layout_marginTop="25dp">
        <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                >
            <ListView
                    android:layout_width="95dp"
                    android:layout_height="700dp"
                    android:id="@+id/listView2"
                    android:layout_gravity="center_horizontal|top"/>
            <ListView
                    android:layout_width="95dp"
                    android:layout_height="700dp"
                    android:id="@+id/listView3"
                    android:layout_gravity="center_horizontal|top"/>
            <ListView
                    android:layout_width="95dp"
                    android:layout_height="700dp"
                    android:id="@+id/listView4"
                    android:layout_gravity="center_horizontal|top"/>
            <ListView
                    android:layout_width="95dp"
                    android:layout_height="700dp"
                    android:id="@+id/listView5"
                    android:layout_gravity="center_horizontal|top"/>
            <ListView
                    android:layout_width="95dp"
                    android:layout_height="700dp"
                    android:id="@+id/listView6"
                    android:layout_gravity="center_horizontal|top"/>
        </LinearLayout>
    </ScrollView>

但这当然不适用于不同的屏幕尺寸。

不要EVERListView放在ScrollView中,无论如何,以下是您的操作方法:

<LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent">
        <ListView
                android:layout_width="0dp"
                android:layout_height="fill_parent" android:layout_weight="20"
                android:id="@+id/listView2" />
        <ListView
                android:layout_width="0dp"
                android:layout_height="fill_parent" android:layout_weight="20"
                android:id="@+id/listView3" />
        <ListView
                android:layout_width="0dp"
                android:layout_height="fill_parent" android:layout_weight="20"
                android:id="@+id/listView4" />
        <ListView
                android:layout_width="0dp"
                android:layout_height="fill_parent" android:layout_weight="20"
                android:id="@+id/listView5" />
        <ListView
                android:layout_width="0dp"
                android:layout_height="fill_parent" android:layout_weight="20"
                android:id="@+id/listView6" />
    </LinearLayout>

android:weightSum="5"放在LinearLayout中,并将android:layout_weight="1"添加到每个ListView中。您可能需要将宽度设置为0。

我也不建议把ListView放在ScrollView里面。

最新更新