0

我正在为 Android 2.2(API 级别 8)编程,在我的主视图中,我以一种简化的方式拥有:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/relativeParent"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TableRow
        android:id="@+id/tableRow2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >

      ...

    </TableRow>

    <ListView
        android:id="@+id/listview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
    </ListView>

        <ViewStub
            android:id="@+id/includeIdForPlayerStub"
            android:layout_alignParentBottom="true"
            android:layout_alignBottom="@+id/listview"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:inflatedId="@+id/playerStubId"
            android:layout="@layout/player_stub" />

</RelativeLayout>

我想把 ViewStub 放在父级的底部,就在列表视图的正下方,但是现在它不起作用。ViewStub 添加的 LinearLayout 位于屏幕底部,但列表位于添加的内容下方,导致列表内容位于下方且不可见/不可访问。查看添加内容下方的滚动条也很明显。

ViewStub 的根视图是:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="bottom"
    android:layout_gravity="center_horizontal|bottom"
    android:background="@drawable/backrepeat"
    android:baselineAligned="false" >

</LinearLayout>

任何人都知道如何解决这个问题?谢谢!

4

1 回答 1

0

更改项目的顺序,以便首先放置 ViewStub,然后将 ListView 设置为 ViewStub 上方:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/relativeParent"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TableRow
        android:id="@+id/tableRow2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >

      ...

    </TableRow>

    <ViewStub
        android:id="@+id/includeIdForPlayerStub"
        android:layout_alignParentBottom="true"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:inflatedId="@+id/playerStubId"
        android:layout="@layout/player_stub" />

    <ListView
        android:id="@+id/listview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@id/includeIdForPlayerStub"
        android:layout_below="@id/tableRow2">
    </ListView>

</RelativeLayout>
于 2013-03-20T18:29:25.493 回答