Прокрутка RecyclerView в соответствии с другой позицией RecyclerView - PullRequest
0 голосов
/ 19 января 2020

У меня есть горизонтальное представление recycler (Category Recyclerview) в верхней части экрана, содержащее заголовки, под ним - еще один вертикальный recyclerView (Category Items), которое содержит заголовки и вспомогательное recyclerView, которое содержит элементы каждого заголовка.

Мне нужно сделать прокрутку по горизонтали (повторное представление категории) для указания c заголовка в соответствии с последним отображаемым заголовком в представлении вертикали (элементы категории).

Вот код, за которым я следую, он работает но не эффективный, как ожидалось enter image description here

enter image description here

enter image description here

1 Ответ

0 голосов
/ 19 января 2020

Использование LinearLayoutManager.findLastVisibleItemPosition () и LinearLayoutManager.scrollToPosition ()

Что-то вроде:

fun myFunction() {
    val lastDisplayedTitleIndex = verticalLinearLayoutManager.findLastVisibleItemPosition()
    val horizontalItemIndex = figureOutHorizontalItemIndexFromLastVerticalVisibleItemIndex(lastDisplayedTitleIndex)
    horizontalLinearLayoutManager.scrollToPosition(horizontalItemIndex)
}

private fun figureOutHorizontalItemIndexFromLastVerticalVisibleItemIndex(index: Int) {
    // YOUR LOGIC HERE
}

Надеюсь, что помогает!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...