У меня есть вертикальная RecyclerView
, содержащая элементы строки. Я бы хотел, чтобы поведение прокрутки было похоже на ViewPager
, где вы можете прокручивать страницу за страницей.
PagerSnapHelper предназначен для имитации этого поведения; однако в моем случае RecyclerView может содержать несколько элементов одновременно (т.е. каждый элемент в адаптере не обязательно будет иметь MATCH_PARENT
ширину и высоту).
LinearSnapHelper
- это немного ближе, за исключением того, что количество видимых элементов в моем RecyclerView
может варьироваться в зависимости от высоты каждого элемента строки, что не фиксировано. Я хотел бы рассматривать все полностью видимые элементы как одну страницу, поэтому, когда вы бросаете / прокручиваете, следующий элемент внизу (независимо от положения адаптера) щелкает вверх, когда вы отпускаете палец.
Например, при первоначальной настройке содержимого адаптера, если у вас есть 5 полностью видимых элементов, а 6-й частично виден, при прокрутке 6-й элемент должен закрепиться наверху. Затем, если элементы 6–12 полностью видны, а элементы 13 - нет, при следующей прокрутке элемент 13 должен оказаться наверху.