то фрагмент, который создается после выбора item(a) в RecyclerView. Как в ВК со списком друзей. Вы зашли в свой список друзей, крутанули вниз и затем выбрали друга. Затем когда посмотрели страницу друга жмакнули назад. Вопрос: RecyclerView умный и он запоминает или это нужно самому реализовать?
// если хотим сохранить последнюю проскролленную позицию protected open fun savePreviousPosition() { recycler?.let { rec -> previousPosition?.let { val v = rec.getChildAt(0) it.index = (rec.layoutManager as? LinearLayoutManager?)?.findFirstVisibleItemPosition() ?: 0 it.top = v?.let { it.top - rec.paddingTop } ?: 0 } } } // прокручиваем к ранее выбранным элементам open fun applyScrollPosition() { recycler?.let { rec -> stopRecyclerScroll() previousPosition?.let { if (it.index > 0) (rec.layoutManager as? LinearLayoutManager)?.scrollToPositionWithOffset(it.index, it.top) else rec.layoutManager?.scrollToPosition(0) } } }
Обсуждают сегодня