Прокрутите содержимое RecyclerView, используя внешний ScrollView - PullRequest
0 голосов
/ 30 марта 2020

У меня есть RecyclerView, расположенный внизу внутренней части вертикального ScrollView. Теперь у каждого элемента RecyclerView есть OnClickListener, который «расширяет» макет элемента, чтобы показать больше деталей. Теперь я заметил, что когда у меня развернуто несколько макетов элементов, и я пытаюсь прокручивать вверх и вниз, логически прокрутка происходит внутри RecyclerView, таким образом:

  1. Прокрутка с меньшей скоростью, чем это было бы если она прокручивалась за пределами RecyclerView и внутри ScrollView
  2. При прокрутке вверх прокрутка останавливается при достижении вершины RecyclerView, а затем вам нужно снова прокрутить, чтобы прокрутить остальные макета ScrollView.

Кроме того, поскольку нижняя часть всего макета занята RecyclerView, для прокрутки вверх в пределах родительского scrollview необходимо выполнить прокрутку до верхней части RecyclerView. сначала нажмите сверху (там, где горит индикатор), а затем снова прокрутите вверх. Есть ли способ использовать внешний ScrollView для прокрутки элементов RecyclerView и их расширенных макетов? Могу ли я прокрутить основной макет, когда прокручиваю его из окна реселлера?

1 Ответ

1 голос
/ 07 апреля 2020

A Вместо ScrollView следует использовать NestedScrollView , то есть если вы хотите придерживаться общих представлений прокрутки.

Этот подход также объясняется здесь .

Или вы можете заменить весь вид прокрутки большим RecyclerView. Это может быть ваниль или с эпоксидной смолой .

...