Intereting Posts
Android / SQLite: колонки Insert-Update для сохранения идентификатора Расширение классов предпочтений в Android Lollipop = проигрывание анимации Рекламный баннер не отображается UnknownError: ApiException: Key hash **** не соответствует … когда у меня установлено приложение FB Как добавить CustomView к моей пользовательской клавиатуре в Android, как GIF-клавиатура MediaCodec H264 Encoder не работает на устройствах Snapdragon 800 Вы хотите зарегистрировать файл R.java в VCS? Запись ресурса com.crashlytics.android.build_id уже определена Android Studio – Как увеличить размер выделенной кучи Андроид, использующий Renderscript для размытия эффектов, вызывает A / libc: фатальный сигнал 7 (SIGBUS), код 2, ошибка addr 0x9e6fa000 in tid 482 (AsyncTask # 1) «Ошибка клиентской версии командной строки Subversion слишком старая» в Android Studio Как показать на клавиатуре мягкую клавиатуру Как заблокирована ориентация приложения (пейзаж или портрет)? Android – Фрагмент экрана вращается Наиболее правильно сохранить состояние RecyclerView?

Вложенные RecyclerView с координаторомLayout

Мой вопрос такой же, как этот вопрос. Прокрутка поведения в вложенном RecyclerView с горизонтальной прокруткой

Как и в магазине Google Play, у меня есть вложенный RecyclerView (Horizontal) внутри родительского RecyclerView. Родительский RecyclerView является дочерним элементом CoordinatorLayout, в котором панель инструментов расширяется и сворачивается, когда происходит прокрутка родительского RecyclerView.

Все работает отлично на ощупь вне дочернего RecyclerView и прокручивается вверх. CollapsingToolbar обрушивается, но когда я касаюсь одного из дочерних RecyclerView и прокручиваю вверх, то родительский RecyclerView получает прокрутку, а CollapsingToolbar не работает.

Введите описание изображения здесь

Введите описание изображения здесь

Если потребуется, я добавлю здесь свой исходный код.

Любая помощь будет оценена!

ОБНОВИТЬ :

Деятельность координатораLayout

<?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout android:id="@+id/coord_layout" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".activity.ChannelHubOld"> <android.support.design.widget.AppBarLayout android:id="@+id/app_bar_layout" android:fitsSystemWindows="true" android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_scrollFlags="scroll|exitUntilCollapsed" app:contentScrim="?attr/colorPrimary" android:fitsSystemWindows="true"> <RelativeLayout android:background="@color/pkDarkGrey" android:fitsSystemWindows="true" android:layout_width="match_parent" android:layout_height="200dp"> <ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:scaleType="centerCrop" android:src="@drawable/sidebar_header"/> </RelativeLayout> <android.support.v7.widget.Toolbar android:id="@+id/my_toolbar" android:layout_width="match_parent" android:layout_height="?android:attr/actionBarSize" android:theme="@style/ActionBarWidget"/> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <!-- Parent RecyclerView ---> <android.support.v7.widget.RecyclerView app:layout_behavior="@string/appbar_scrolling_view_behavior" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/recycler_view_pagelayout" /> </android.support.design.widget.CoordinatorLayout> 

Solutions Collecting From Web of "Вложенные RecyclerView с координаторомLayout"

Имел ту же проблему. Исправлено установкой setNestedScrollingEnabled (false) в горизонтальных вложенных RecyclerViews. Похоже, что вложенный свиток не был правильно перехвачен CoordinatorLayout.Behavior когда он не задан. Попробуйте!

Проверьте создание эффекта Collapsing . Это может вам помочь.

Код из ссылки, если ссылка сломана.

 <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:expandedTitleMarginEnd="64dp" app:expandedTitleMarginStart="48dp" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_scrollFlags="scroll|enterAlways"></android.support.v7.widget.Toolbar> </android.support.design.widget.CollapsingToolbarLayout> 

У меня есть решение для вас, и я попробовал это недавно, чтобы он работал.

Внутри вашего recyclerview вставьте свой nestedScrollView, а не наоборот, как поведение прокрутки в вложенном RecyclerView с предлагаемым горизонтальным прокруткой .

  <android.support.v7.widget.RecyclerView android:id="@+id/my_recycler_view" android:scrollbars="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" > </android.support.v4.widget.NestedScrollView> </android.support.v7.widget.RecyclerView>