Подтвердить что ты не робот

Ошибка Android Drawer Drawer с использованием образца

Я пытаюсь реализовать шаблон ящика навигации, основанный на моем приложении. Я загрузил образец кода из здесь, и я запустил его и в 90% случаев, когда ящик работает нормально, но иногда ящик застревает, когда я пытаюсь чтобы открыть его. У меня есть способ воспроизвести ситуацию, но она не всегда работает. Что я делаю:

1- Запустите образец кода как есть.
2- Положите палец на левый край, чтобы получить зарисовку ящика
3- Отпустите палец и нажмите на основной фрагмент
4- Попробуйте открыть ящик как обычно

Иногда ящик застревает в режиме подглядывания, независимо от того, сколько вы проведете пальцем вправо, чтобы открыть ящик больше. Кто-нибудь имел/исправил эту проблему?

4b9b3361

Ответ 1

Я столкнулся с аналогичной проблемой, о которой говорил вам. У меня был вид списка внутри относительного макета (FILL_PARENT). Всякий раз, когда содержимое в представлении списка меньше, и когда я перетаскивал область, находящуюся за пределами представления списка, ящик навигации был поражен. Установка android:clickable="true" для относительной компоновки разрешила проблему. Надеюсь, это поможет.

Ответ 2

Чтобы уточнить ответ Viji, если вы используете что-то вроде приведенного примера ящика навигации:

<!-- A DrawerLayout is intended to be used as the top-level content view using match_parent for both width and height to consume the full space available. -->
<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <!-- As the main content view, the view below consumes the entire
         space available using match_parent in both dimensions. -->
    <FrameLayout
        android:id="@+id/content_frame"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <!-- android:layout_gravity="start" tells DrawerLayout to treat
         this as a sliding drawer on the left side for left-to-right
         languages and on the right side for right-to-left languages.
         The drawer is given a fixed width in dp and extends the full height of
         the container. A solid background is used for contrast
         with the content view. -->
    <ListView
        android:id="@+id/left_drawer"
        android:layout_width="240dp"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:choiceMode="singleChoice"
        android:divider="@android:color/transparent"
        android:dividerHeight="0dp"
        android:background="#111"/>
</android.support.v4.widget.DrawerLayout>

Добавление android:clickable="true" к FrameLayout, похоже, устраняет проблему.