Программно скрыть ручку выдвижного ящика - PullRequest
4 голосов
/ 01 сентября 2011

Есть ли способ, как я могу скрыть ручку выдвижного ящика при открытии выдвижного ящика? Я попытался использовать метод setVisibility (View.GONE), когда был запущен OnDrawerOpenListener, но дескриптор все еще виден. Можно ли спрятать ручку ящика или она всегда будет видна? Вот фрагмент XML моего выдвижного ящика:

        <SlidingDrawer android:layout_width="wrap_content"
        android:id="@+id/notifDrawer" android:handle="@+id/notifHandle"
        android:content="@+id/notifContent" android:layout_height="fill_parent"
        android:orientation="horizontal">
        <LinearLayout android:id="@+id/notifHandle"
            android:layout_width="wrap_content" android:layout_height="fill_parent"
            android:background="@drawable/button_selected" android:orientation="vertical"
            android:padding="0dip" android:gravity="center">
            <TextView android:id="@+id/notification_count"
                android:visibility="gone" android:layout_width="wrap_content"
                android:layout_height="wrap_content" android:textSize="10sp"
                android:textStyle="bold" android:textColor="#FFFFFF"
                android:gravity="center" android:background="@drawable/badge">
            </TextView>
        </LinearLayout>
        <ListView android:id="@+id/notifContent"
            android:layout_width="fill_parent" android:layout_height="fill_parent"
            android:background="#C0C0C0" android:divider="@drawable/divider"
            android:fadingEdge="none">
        </ListView>
    </SlidingDrawer>

Ответы [ 4 ]

3 голосов
/ 09 февраля 2012

У меня сработал следующий трюк

    <Button
      android:id="@+id/handle"
      android:layout_width="0dp"
      android:layout_height="0dp"
      android:background="#00000000" />
2 голосов
/ 19 сентября 2011

Ниже я могу скрыть ручку:

<LinearLayout android:layout_width="fill_parent"
        android:layout_height="fill_parent" android:gravity="bottom"
        android:orientation="vertical">
        <SlidingDrawer android:layout_width="fill_parent"
            android:id="@+id/drawerShare" android:handle="@+id/slideHandleButton2"
            android:content="@+id/contentLayout" android:layout_height="fill_paren`enter code here`t"
            android:orientation="horizontal">

            <Button android:layout_width="0px" android:layout_height="0px"
                android:id="@+id/slideHandleButton2">
            </Button>
....

Я установил layout_width и layout_height кнопки, которая определена как мой дескриптор, в 0px. Надеюсь это поможет.

0 голосов
/ 12 июля 2013

Я создал полную замену для виджета Google SlidingDrawer.http://www.github.com/kedzie/DraggableDrawers Это позволяет выдвижным ящикам без ручек (которые открываются программно) или простой вызов drawer.getHandle().setVisibility(GONE);

0 голосов
/ 20 сентября 2012

Что я сделал, так это установил изображение дескриптора ImageButton на первые 300x1 или около того пикселей фона, чтобы в нижней части была добавлена ​​дополнительная линия, которая не заметна.

...