2

我在一个活动中有两个expandableListView,起初,我把它们放在一个LinearLayout中,但是当第一个expandableListView展开太多项目时,我看不到第二个:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/white"
    android:orientation="vertical" >

    <ExpandableListView
        android:id="@+id/myContactELV"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
    </ExpandableListView>

    <ExpandableListView
        android:id="@+id/myGroupELV"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
    </ExpandableListView>

</LinearLayout>

第一个视图包括组 aaa、bbb、ccc,第二个视图包括 ddd、eee: 在此处输入图像描述

当第一个展开时,第二个是看不见的,屏幕不滚动: 在此处输入图像描述

所以我想把它们放在一个滚动视图中,但更糟糕的是:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/white"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <ExpandableListView
            android:id="@+id/myContactELV"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
        </ExpandableListView>

        <ExpandableListView
            android:id="@+id/myGroupELV"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
        </ExpandableListView>
    </LinearLayout>

</ScrollView>

在此处输入图像描述

因此,当两个 expandableListview 展开时,我想清楚地看到每个项目,并且屏幕滚动。我怎样才能做到这一点?

4

3 回答 3

2

// 填充视口并为每个列表分配权重,以便均匀分配屏幕

 <?xml version="1.0" encoding="utf-8"?>
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:background="@android:color/white"
   android:fillViewport="true" >

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:orientation="vertical"
    android:weightSum="2" >

    <ExpandableListView
        android:id="@+id/myContactELV"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1" >
    </ExpandableListView>

    <ExpandableListView
        android:id="@+id/myGroupELV"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1" >
    </ExpandableListView>
</LinearLayout>

</ScrollView>
于 2013-06-01T06:49:41.503 回答
1

scrollView 中的两个 ExpandableListView - 我不建议这样做,因为 ExpandableListView 中的子项不会关注少数操作系统版本较低的 android 设备。你应该重新考虑你的设计。

于 2013-06-01T07:24:59.010 回答
1

您必须分别给出每个可扩展列表视图的动态高度

于 2013-06-01T06:47:39.350 回答