Неполное перетаскивание элементов внутри CoordinatorLayout с BottomSheetBehavior - PullRequest
0 голосов
/ 31 августа 2018

Так что это мои текущие настройки. У меня есть CoordinatorLayout, который имеет LinearLayout внутри, что позволяет перетаскивать его внутренние элементы. LinearLayout относится к BottomSheetBehavior, прикрепленному к его родителю. Тем не менее, он ведет себя не совсем так, как я хотел бы.

Это полный Layout:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.design.widget.CoordinatorLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <RelativeLayout
            android:id="@+id/bottomSheetBehaviorLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:clickable="true"
            android:focusable="true"
            app:behavior_hideable="false"
            app:behavior_peekHeight="40dp"
            app:layout_behavior="android.support.design.widget.BottomSheetBehavior">

            <LinearLayout
                android:id="@+id/itemsLayout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical">

                <!-- SOME ITEMS GO HERE -->

            </LinearLayout>

        </RelativeLayout>

    </android.support.design.widget.CoordinatorLayout>

</RelativeLayout>

В настоящий момент, если я перетаскиваю элемент, идущий в противоположном смысле, чем BottomSheetBehavior, то есть снизу вверх, то я могу перетаскивать элементы. Однако, если я начну перетаскивание сверху вниз, оно будет проигнорировано.

Мне бы хотелось, чтобы BottomSheetBehavior, который фиксирует события движения этого внутреннего LinearLayout, игнорировал перетаскивание, если BottomSheetBehavior находится в STATE_EXPANDED.

Я пытался найти какой-то код, который позволяет это, но, видимо, я не очень хорошо ищу. Может ли кто-нибудь помочь?

...