Проблема при наличии scrollView внутри bottomSheetView - PullRequest
0 голосов
/ 05 октября 2018

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

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    android:id="@+id/bottom_sheet"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:behavior_peekHeight="560dp"
    app:layout_behavior="android.support.design.widget.BottomSheetBehavior"
    >
    <RelativeLayout
        android:id="@+id/bottom_sheet_wrapper"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
        <ScrollView
            android:id="@+id/scroll_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <RelativeLayout
                android:id="@+id/relative_layout_wrapper"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@color/activity_background">

                <RelativeLayout
                    android:id="@+id/relative_layout_inner"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="@android:color/white"
                    android:focusedByDefault="true">

                    <ImageView
                        android:id="@+id/order_icon"
                        android:layout_width="30dp"
                        android:layout_height="30dp"
                        android:layout_marginStart="15dp"
                        android:layout_marginTop="25dp"
                        android:contentDescription="@string/app_name"
                        android:src="@drawable/orders" />

                    <TextView
                        android:id="@+id/order_date_title"
                        android:layout_width="wrap_content"
                        android:layout_height="30dp"
                        android:gravity="center"
                        android:layout_marginTop="25dp"
                        android:layout_toEndOf="@id/order_icon"
                        android:paddingLeft="5dp"
                        android:text="@string/order_date2"
                        android:textColor="@android:color/black" />

                    <TextView
                        android:id="@+id/order_date"
                        android:layout_width="wrap_content"
                        android:layout_height="30dp"
                        android:gravity="center|end"
                        android:layout_alignParentEnd="true"
                        android:layout_marginTop="25dp"
                        android:layout_marginEnd="15dp"
                        android:layout_toEndOf="@id/order_date_title"
                        android:paddingLeft="90dp"
                        android:text="@string/date5"
                        android:textColor="@android:color/black"
                        android:textStyle="bold" />

                    <ImageView
                        android:id="@+id/placeBy_icon"
                        android:layout_width="30dp"
                        android:layout_height="30dp"
                        android:layout_below="@id/order_icon"
                        android:layout_marginStart="15dp"
                        android:layout_marginTop="20dp"
                        android:contentDescription="@string/app_name"
                        android:src="@drawable/person" />

                    <TextView
                        android:id="@+id/placed_by_title"
                        android:layout_width="wrap_content"
                        android:layout_height="30dp"
                        android:layout_below="@id/order_date_title"
                        android:layout_marginTop="20dp"
                        android:gravity="center"
                        android:layout_toEndOf="@id/placeBy_icon"
                        android:paddingLeft="5dp"
                        android:text="@string/placed_by"
                        android:textColor="@android:color/black" />

                    <TextView
                        android:gravity="center|end"
                        android:id="@+id/placed_by"
                        android:layout_width="wrap_content"
                        android:layout_height="30dp"
                        android:layout_below="@id/order_date_title"
                        android:layout_marginTop="20dp"
                        android:layout_marginEnd="15dp"
                        android:layout_toEndOf="@id/placed_by_title"
                        android:paddingLeft="100dp"
                        android:text="@string/user_name"
                        android:layout_alignParentEnd="true"
                        android:textColor="@android:color/black"
                        android:textStyle="bold" />

                    <ImageView
                        android:id="@+id/delivery_icon"
                        android:layout_width="30dp"
                        android:layout_height="30dp"
                        android:layout_below="@id/placeBy_icon"
                        android:layout_marginStart="15dp"
                        android:layout_marginTop="20dp"
                        android:contentDescription="@string/app_name"
                        android:src="@drawable/delivery" />

                    <TextView
                        android:id="@+id/delivery_method_title"
                        android:layout_width="wrap_content"
                        android:layout_height="30dp"
                        android:gravity="center"
                        android:layout_below="@id/placed_by_title"
                        android:layout_marginTop="20dp"
                        android:layout_toEndOf="@id/delivery_icon"
                        android:paddingLeft="5dp"
                        android:text="@string/delivery_method"
                        android:textColor="@android:color/black" />

                    <TextView
                        android:id="@+id/delivery_method"
                        android:layout_width="wrap_content"
                        android:layout_height="30dp"
                        android:gravity="center|end"
                        android:layout_marginEnd="15dp"
                        android:layout_below="@id/placed_by_title"
                        android:layout_marginTop="20dp"
                        android:layout_toEndOf="@id/delivery_method_title"
                        android:layout_alignParentEnd="true"
                        android:text="@string/shipping"
                        android:textColor="@android:color/black"
                        android:textStyle="bold" />

                    <RelativeLayout
                        android:id="@+id/add_to_calander_button_shipment"
                        android:layout_width="340dp"
                        android:layout_height="40dp"
                        android:layout_below="@+id/delivery_icon"
                        android:layout_centerHorizontal="true"
                        android:layout_marginBottom="20dp"
                        android:layout_marginTop="20dp"
                        android:background="@drawable/add_to_calander">

                        <RelativeLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerHorizontal="true"
                            android:layout_centerVertical="true">

                            <ImageView
                                android:id="@+id/addToCalIcon"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:contentDescription="@string/app_name"
                                android:src="@drawable/orders" />

                            <TextView
                                android:id="@+id/addToCalText"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginStart="5dp"
                                android:layout_marginTop="2dp"
                                android:layout_toEndOf="@id/addToCalIcon"
                                android:text="@string/add_to_calander"
                                android:textSize="14dp" />
                        </RelativeLayout>
                    </RelativeLayout>
                </RelativeLayout>

                <View
                    android:id="@+id/threeItems"
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:layout_below="@+id/relative_layout_inner"
                    android:layout_marginTop="30dp"
                    android:layout_marginStart="10dp"
                    android:background="@color/activity_background" />

                <TextView
                    android:id="@+id/threeItemstext"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/relative_layout_inner"
                    android:layout_marginTop="30dp"
                    android:text="@string/number_of_items"
                    android:textColor="@color/black"
                    android:layout_marginStart="10dp"
                    android:textSize="16dp"
                    android:textStyle="bold" />

                <android.support.v4.widget.NestedScrollView
                    android:id="@+id/nestedRecyclerView"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_below="@id/threeItems">

                    <android.support.v7.widget.RecyclerView
                        android:id="@+id/simpleRecyclerView"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:background="@android:color/white"
                        android:nestedScrollingEnabled="false"
                        app:layout_behavior="@string/app_bar_scrolling_view_behavior">

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

                <include
                    android:id="@+id/delivery_details"
                    layout="@layout/track_shipment_delivery_details_fragment"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/nestedRecyclerView"
                    android:layout_marginBottom="5dp"
                    android:layout_marginEnd="10dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginTop="10dp" />

                <include
                    android:id="@+id/order"
                    layout="@layout/track_shipment_order_total_fragment"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/delivery_details"
                    android:layout_marginBottom="5dp"
                    android:layout_marginEnd="10dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginTop="5dp" />

                <include
                    android:id="@+id/need_help"
                    layout="@layout/track_shipment_need_help_fragment"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/order"
                    android:layout_marginBottom="10dp"
                    android:layout_marginEnd="10dp"
                    android:layout_marginStart="10dp"
                    android:layout_marginTop="5dp" />
            </RelativeLayout>
        </ScrollView>

    </RelativeLayout>
</RelativeLayout>

Как видно из кода, у меня есть вид прокрутки внутри Относительного макета, ведущий себя как вид нижнего листа, как это: исходный вид мойнижний лист начинается с «Дата заказа».Теперь, когда я раскрываю нижний лист, происходит следующее: Изображение 2 .. Теперь, когда я прокручиваю это, я получаю что-то вроде: изображение 3 .Теперь, иногда случается так, что, когда я пытаюсь прокрутить вверх, вместо прокрутки просмотра вверх, мой нижний лист сворачивается, и прокручиваемый контент остается таким, как это: изображение 4 .. Я хочу, чтобы мойсодержимое сначала полностью прокручивается, а затем лист сворачивается после прокрутки всего содержимого.Может кто-нибудь, пожалуйста, помогите мне?

...