0

我尝试在 android 上使用 SlidingDrawer。

当你点击 ImageButton “handle” 时,SlidingDrawer “slidingDrawerMP” 应该与 “coversSongLayout” 线性布局重叠,但它不起作用。有什么建议么?

谢谢

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

    <LinearLayout android:id="@+id/coversSongLayout"
        android:layout_height="wrap_content" android:layout_width="fill_parent"
        android:layout_weight="1">

        <GridView xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/coversLayout" android:layout_width="fill_parent"
            android:layout_height="fill_parent" android:columnWidth="90dp"
            android:numColumns="auto_fit" android:verticalSpacing="10dp"
            android:horizontalSpacing="10dp" android:stretchMode="columnWidth"
            android:gravity="center" android:layout_weight="1" />

    </LinearLayout>

    <FrameLayout android:id="@+id/linearLayoutMP"
        android:layout_height="28dp" android:gravity="bottom"
        android:layout_width="fill_parent" android:background="@android:color/transparent"
        android:layout_margin="0dip">

        <SlidingDrawer android:id="@+id/slidingDrawerMP"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:handle="@+id/handle" android:content="@+id/content"
            android:background="#aa0000">

            <ImageButton android:id="@+id/handle"
                android:layout_width="wrap_content" android:src="@drawable/up"
                android:background="#fff" android:layout_height="wrap_content"></ImageButton>

            <LinearLayout android:id="@+id/content"
                android:background="#ccaaaaaa" android:layout_width="wrap_content"
                android:layout_height="wrap_content">

                <LinearLayout android:gravity="center"
                    xmlns:android="http://schemas.android.com/apk/res/android"
                    android:layout_width="fill_parent" android:layout_height="fill_parent"
                    android:orientation="vertical" android:id="@+id/currentSongLayout">

                    <LinearLayout android:id="@+id/coverLayout"
                        android:orientation="horizontal" android:gravity="center"
                        android:layout_height="wrap_content" android:layout_width="fill_parent">

                        <ImageView android:id="@+id/cover" android:src="@drawable/generic_cover"
                            android:layout_width="wrap_content" android:layout_height="wrap_content" />
                    </LinearLayout>

                    <LinearLayout android:id="@+id/songLayout"
                        android:orientation="horizontal" android:gravity="center"
                        android:layout_height="wrap_content" android:layout_width="fill_parent">

                        <TextView android:layout_width="wrap_content"
                            android:layout_height="wrap_content" android:text="Unknowed Song" />
                    </LinearLayout>

                    <LinearLayout android:id="@+id/artistAlbumLayout"
                        android:orientation="horizontal" android:gravity="center"
                        android:layout_height="wrap_content" android:layout_width="fill_parent">

                        <TextView android:layout_width="wrap_content"
                            android:layout_height="wrap_content" android:text="Unknowed Artist" />

                        <TextView android:layout_width="wrap_content"
                            android:layout_height="wrap_content" android:text=" - " />

                        <TextView android:layout_width="wrap_content"
                            android:layout_height="wrap_content" android:text="Unknowed Album" />
                    </LinearLayout>
                </LinearLayout>
            </LinearLayout>

        </SlidingDrawer>
    </FrameLayout>
    <LinearLayout android:id="@+id/mediaControls"
        android:orientation="horizontal" android:background="#ccaaaaaa"
        android:layout_width="match_parent" android:layout_height="53dp">
        <ImageButton android:layout_height="wrap_content"
            android:background="@null" android:layout_width="fill_parent"
            android:layout_weight="1" android:src="@drawable/prev" android:id="@+id/prev"></ImageButton>
        <ImageButton android:layout_height="wrap_content"
            android:background="@null" android:layout_width="fill_parent"
            android:layout_weight="1" android:src="@drawable/play" android:id="@+id/play" />
        <ImageButton android:layout_height="wrap_content"
            android:background="@null" android:layout_width="fill_parent"
            android:layout_weight="1" android:src="@drawable/next" android:id="@+id/next" />
    </LinearLayout>
</LinearLayout>
4

2 回答 2

2

包含滑动抽屉的 FrameLayout 只有 28 dp 高,它需要与抽屉的打开尺寸一样大。通常你希望抽屉的容器和屏幕一样大。

于 2011-08-30T07:42:27.530 回答
0

我在线性布局中也遇到了滑动抽屉的问题。您的根布局似乎应该是一个框架或相对布局,以便滑动抽屉位于您的其余内容之上。(似乎也合乎逻辑)。还要检查 Romain 建议的高度。

于 2011-08-30T08:15:46.653 回答