如何使用linearLayout设置expandablelistview?

时间:2013-11-17 05:31:07

标签: android android-linearlayout expandablelistview tablelayout

在我的Android应用程序中,我有一个可扩展列表视图和tableLayout中的按钮,但我有一个问题,表格的宽度未完全显示,我设置(android:layout_width =“match_parent”),但它不起作用。另一方面,当我使用linearLayout时,按钮隐藏在列表下(当我打开子列表时)。物品之间有某种重叠。我有两件物品。其中一个藏在其他人之下。我该如何解决?

我的代码是:

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

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
             android:orientation="vertical"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             android:gravity="center_horizontal">

    <TableRow
            android:id="@+id/tableRow1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

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

    </TableRow>

    <TableRow
            android:id="@+id/tableRow2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
        <Button
                android:id="@+id/backup"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"

                android:text="BackUp"
                android:clickable="true"/>

    </TableRow>

</TableLayout>
</LinearLayout>

1 个答案:

答案 0 :(得分:0)

您可以在LinearLayout的子级中使用属性layout_weight。它显示了它们在屏幕上显示的空间大小,因此如果您将layout_weight设置为仅在LinearLayout中的一个视图,则此视图将占用所有可用空间。

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


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

    <Button
        android:id="@+id/backup"
        android:layout_gravity="center_horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="BackUp"
        android:clickable="true" />

</LinearLayout>