Android:ExpandableListview中的重叠&列表显示

时间:2014-03-20 04:32:14

标签: android listview android-listview expandablelistview

在我的Android应用程序中,我有expandableListViewListview。在ListView我从 Webservice 获取数据。然后数据加载到ListView ExpandableListViewListView之间的某种重叠项目我希望其中一个隐藏在其他项目之下。我怎样才能实现它?

请在下面找到我的申请表。

enter image description here

我的Xml代码

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


 <GridView 
    android:id="@+id/listView1"
    android:numColumns="auto_fit"
    android:gravity="center"
    android:columnWidth="100dp"
    android:stretchMode="columnWidth"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

</GridView>

            <ExpandableListView
                android:id="@+id/lvExp"
                android:layout_width="wrap_content"
                android:layout_height="135dp"
                android:layout_alignParentBottom="true"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true"
                android:divider="#00000000"
                android:groupIndicator="@drawable/group_indicator"
                android:stackFromBottom="true" >
            </ExpandableListView>

            <ListView
                android:id="@+id/listView2"
                android:layout_width="match_parent"
                android:layout_height="150dp"
                android:layout_alignParentLeft="true"
                android:layout_below="@+id/listView1"
                android:layout_marginTop="37dp"
                android:divider="#00000000"
                android:listSelector="@android:color/transparent" >
            </ListView>

</RelativeLayout>

2 个答案:

答案 0 :(得分:0)

试试这个。

  <?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:descendantFocusability="blocksDescendants"
    android:orientation="vertical" >

    <GridView
        android:id="@+id/listView1"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="0.4"
        android:columnWidth="100dp"
        android:gravity="center"
        android:numColumns="auto_fit"
        android:stretchMode="columnWidth" >
    </GridView>

    <ExpandableListView
        android:id="@+id/lvExp"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_marginTop="10dp"
        android:layout_weight="0.4"
        android:divider="#00000000"
        android:stackFromBottom="true" >
    </ExpandableListView>

    <ListView
        android:id="@+id/listView2"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_marginTop="10dp"
        android:layout_weight="0.2"
        android:divider="#00000000"
        android:listSelector="@android:color/transparent" >
    </ListView>

</LinearLayout>

答案 1 :(得分:0)

请注意,至少在此代码中您使用的是GridView而不是ListView,您的ListView目前已被评论。

现在,如果您想ExpandalbleListView以下ListView添加

  

机器人:layout_below = “@ ID / ListView1的”

ListView。您正在使用RelativeLayout,此布局创建为z-axis,可以将视图重叠在一起。因此,在RelativeLayout中,您必须指定view相对于其他`视图的位置的位置。