BottomSheet:仅当用户从ListView的X子级拖动时才允许拖动

时间:2019-11-29 15:17:42

标签: android listview bottom-sheet android-nestedscrollview nestedscrollview

我有一个NestedScrollView用作BottomSheet,它的内部有一个ListView,可在其中加载几个元素。 我只想在用户拖动ListView的第一个子项时固定拖动BottomSheet(它是固定的,并且始终在列表中可见)。 现在的问题是,当我想向下滚动以查看ListView的所有元素时,BottomSheet会展开,而当我向上滚动至第一个元素时,BottomSheet会减小其大小。

该xml是:

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center_horizontal"
        android:orientation="vertical">

        <include
            android:id="@+id/information_card"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            layout="@layout/information_view" />
    </LinearLayout>

    <android.support.v4.widget.NestedScrollView
        android:id="@+id/bottom_sheet"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fillViewport="true"
        app:behavior_hideable="false"
        app:behavior_peekHeight="350dp"
        app:layout_behavior="@string/bottom_sheet_behavior">

        <com.example.app.DoubleStickyHeaderListView
            android:id="@+id/doubleStickyHeaderList"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/information_card"
            android:focusableInTouchMode="true"
            android:nestedScrollingEnabled="true"
            android:divider="@null"
            android:dividerHeight="0dp"/>


    </android.support.v4.widget.NestedScrollView>

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

0 个答案:

没有答案