У меня есть recylerview с arrayList, который содержит весь день недели. Когда я нажимаю, чтобы выбрать день, отображается recyclerview. Затем уже выбран третий день недели (по умолчанию). Мне нужно центрировать его в recyclerview, а затем, когда я выбрал другой день в своем recycler, ему нужно снова центрировать выбранный элемент. Это мой код:
val recyclerViewGiorni = view.giorniRV
val horizontalLayoutManager = LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false)
recyclerViewGiorni.layoutManager = horizontalLayoutManager
adapter = ButtonPromemoriaAdapter(giorniPromemoria)
recyclerViewGiorni.adapter = adapter
val snapHelper = LinearSnapHelper()
snapHelper.attachToRecyclerView(recyclerViewGiorni)
recyclerViewGiorni.addOnScrollListener(object : RecyclerView.OnScrollListener() {
override fun onScrollStateChanged(recyclerView: RecyclerView, newState: Int) {
super.onScrollStateChanged(recyclerView, newState)
if (newState == RecyclerView.SCROLL_STATE_IDLE) {
val centerView = snapHelper.findSnapView(horizontalLayoutManager)
val pos = horizontalLayoutManager.getPosition(centerView!!)
Log.e("Snapped Item Position:", "" + pos)
}
}
})




Я думаю, вы ищете SpanHelper
SnapHelper snapHelper = new LinearSnapHelper();
snapHelper.attachToRecyclerView(yourRecyclerView);
Пожалуйста, посмотрите на
для получения дополнительной информации.