SlidingDrawer перемещается по исходному экрану - PullRequest
0 голосов
/ 26 января 2012

Мое приложение содержит экран, который содержит горизонтальный SlidingDrawer.Когда пользователь нажимает на ручку выдвижного ящика, он должен «покрывать» весь экран.когда он закрылся, должен появиться «оригинальный» экран.Я нашел ящик в FrameLayout, но ручка исчезла.

Как это можно решить?

Спасибо, Eyal

1 Ответ

3 голосов
/ 26 января 2012

Забавно, я только недавно решил эту проблему.Это заняло у меня некоторое время, но после некоторого поиска в Google и тестирования я придумал следующее:

По сути, я поместил весь макет в «Относительный макет», а затем создал внутри него «Линейный макет» для основноговещи.Внутри «Относительного макета», но за пределами «Линейного макета» я поместил свой «SlidingDrawer».Я показываю кнопки и ручку в XML ниже.Кроме того, я создал «Linear Layout» в своем «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>

Перед публикацией я просто запустил свое тестовое приложение с этим кодом, и оно работает.Если у вас есть какие-либо вопросы, пожалуйста, задавайте, и я надеюсь, что это поможет.

enter image description here

...