Java 回收视图内部协调器布局

Java 回收视图内部协调器布局,java,android,xml,android-recyclerview,android-coordinatorlayout,Java,Android,Xml,Android Recyclerview,Android Coordinatorlayout,我需要这样的变体。但我认为ScrollView或NestedScrollView中的RecyclerView并不是解决我的任务的更好的变体。因为当我将数据(20-25或更多)加载到RecyclerView时,Ui会停止一秒钟。此外,我不能为我的RecyclerView(长列表)的背景设置自定义绘图。所以我选择了带有协调器的变体 但是我有一个问题。 1) 我需要不停地滚动。AppBarLayout慢慢消失。有必要拉一下手指 2) 当RecyclerView为空时,如何阻止AppBarLayout?

我需要这样的变体。但我认为ScrollView或NestedScrollView中的RecyclerView并不是解决我的任务的更好的变体。因为当我将数据(20-25或更多)加载到RecyclerView时,Ui会停止一秒钟。此外,我不能为我的RecyclerView(长列表)的背景设置自定义绘图。所以我选择了带有协调器的变体

但是我有一个问题。 1) 我需要不停地滚动。AppBarLayout慢慢消失。有必要拉一下手指 2) 当RecyclerView为空时,如何阻止AppBarLayout?当屏幕上有空间时,我不需要隐藏AppBarLayout

所以,我同意NestedScrollView的变体。如果你能帮我解决刹车的问题

谢谢,如果有人能帮我的话

<?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:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:fitsSystemWindows="false"
android:orientation="vertical"
app:statusBarBackground="@android:color/transparent"
>

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fitsSystemWindows="true"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    >

    <android.support.design.widget.CollapsingToolbarLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        app:layout_collapseMode="parallax"
        app:layout_scrollFlags="scroll|exitUntilCollapsed"
        >

        <include layout="@layout/toolbar"
            />

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

        <EditText
            android:id="@+id/phone_book"
            android:layout_width="match_parent"
            android:layout_height="48dp"
            android:layout_marginTop="?actionBarSize"
            app:layout_collapseMode="none"
            style="@style/EditTextSearchPhoneBookStyle"
            />

        <android.support.v7.widget.RecyclerView
            android:id="@+id/rv_history"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="25dp"
            android:orientation="horizontal"
            app:layoutManager="android.support.v7.widget.LinearLayoutManager"
            />

            <View
                android:layout_width="match_parent"
                android:layout_height="1dp"
                android:background="@color/secondary_light_text_color"
                android:layout_marginTop="20dp"
                />

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="35dp"
                android:layout_marginTop="20dp"
                android:paddingLeft="6dp"
                android:paddingRight="6dp"
                android:orientation="horizontal"
                >

                <Button
                    android:id="@+id/btn_by_card"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:text="По номеру карты"
                    android:background="@color/payments_view_color"
                    />

                <Button
                    android:id="@+id/btn_by_phone"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:text="По номеру телефона"
                    android:background="@null"
                    />

            </LinearLayout>

            <FrameLayout
                android:layout_width="match_parent"
                android:layout_height="48dp"
                android:layout_centerHorizontal="true"
                android:layout_centerVertical="true"
                android:layout_marginTop="20dp"
                android:layout_marginLeft="@dimen/activity_horizontal_margin"
                android:layout_marginRight="@dimen/activity_horizontal_margin"
                android:layout_marginBottom="@dimen/activity_vertical_margin"
                >

                <EditText
                    android:id="@+id/pan"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:drawableRight="@mipmap/ic_card"
                    android:hint="Введите номер карты"
                    style="@style/EditTextCardNumberStyle"
                    />

                <Button
                    android:id="@+id/btn_clear"
                    android:layout_width="48dp"
                    android:layout_height="48dp"
                    android:layout_gravity="right"
                    android:text=" "
                    android:background="?android:attr/selectableItemBackground"
                    />
            </FrameLayout>

            <LinearLayout
                android:id="@+id/access_contacts_frame"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_marginTop="20dp"
                android:layout_marginLeft="@dimen/activity_horizontal_margin"
                android:layout_marginRight="@dimen/activity_horizontal_margin"
                android:layout_marginBottom="@dimen/activity_vertical_margin"
                android:orientation="vertical"
                android:visibility="gone"
                >

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:textColor="@color/secondary_text_color"
                    android:gravity="center"
                    android:text="Пожалуйста разрешите приложению доступ к вашим контактам для возможности отправки переводов"
                    />

                <Button
                    android:id="@+id/btn_access"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="15dp"
                    android:layout_marginLeft="@dimen/activity_horizontal_margin"
                    android:layout_marginRight="@dimen/activity_horizontal_margin"
                    android:layout_marginBottom="@dimen/activity_vertical_margin"
                    android:text="Разрешите доступ"
                    style="@style/ButtonStyle"
                    />

            </LinearLayout>

        </LinearLayout>

    </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>


<android.support.v7.widget.RecyclerView
    android:id="@+id/rv_contacts"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/white"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    />

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


我也有相同的需求recyclerview和标题,我解决了这个问题NestedScrollView@LovekushVishwakarma是的。好主意。为什么我不考虑这个问题,所以我只需将布局添加到RecyclerView的标题,而不需要协调器、ScrollView或NestedScrollView。我理解正确了吗?我也有同样的需求recyclerview和标题,我解决了这个问题NestedScrollView@LovekushVishwakarma是的。好主意。为什么我不考虑这个问题,所以我只需将布局添加到RecyclerView的标题,而不需要协调器、ScrollView或NestedScrollView。我没听错吧?