【发布时间】:2012-01-25 21:16:13
【问题描述】:
我的应用程序包含一个包含水平 SlidingDrawer 的屏幕。 当用户按下抽屉手柄时,抽屉应该“覆盖”整个屏幕。当它关闭时,“原始”屏幕应该会显示出来。 我在 FrameLayout 中找到了抽屉,但手柄消失了。
如何解决?
谢谢, 埃亚尔
【问题讨论】:
标签: android android-layout slidingdrawer
我的应用程序包含一个包含水平 SlidingDrawer 的屏幕。 当用户按下抽屉手柄时,抽屉应该“覆盖”整个屏幕。当它关闭时,“原始”屏幕应该会显示出来。 我在 FrameLayout 中找到了抽屉,但手柄消失了。
如何解决?
谢谢, 埃亚尔
【问题讨论】:
标签: android android-layout slidingdrawer
有趣的是,我不久前刚刚解决了这个问题。我花了一点时间,但经过一些谷歌搜索和测试后,我想出了这个:
基本上,我将整个布局放入“相对布局”中,然后在其中为主要内容创建了一个“线性布局”。在“相对布局”内但在“线性布局”之外,我放置了“SlidingDrawer”。我在下面的 xml 中显示按钮和句柄。此外,我在我的“SlidingDrawer”中为内容创建了一个“线性布局”。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
..stuff for the main screen
</LinearLayout>
<SlidingDrawer
android:id="@+id/SlidingDrawer"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:content="@+id/contentLayout"
android:handle="@+id/slideHandleButton" >
<Button
android:id="@+id/slideHandleButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/list_background"
android:padding="8dp"
android:text="My App"
android:textSize="7pt" >
</Button>
<LinearLayout>
...sliding drawing is at the bottom
...stuff in here will be in the sliding drawer
</LinearLayout>
</SlidingDrawer>
</RelativeLayout>
在发布之前,我只是用这段代码运行了我的测试应用程序,它可以工作。如果您有任何问题,请提出,希望对您有所帮助。
【讨论】: