Как отцентрировать выбранный элемент внутри горизонтального вида переработчика? - PullRequest
0 голосов
/ 18 января 2019

У меня есть recylerview с arrayList, который содержит весь день недели.Когда я нажимаю, чтобы выбрать день, отображается окно реселлера.Затем уже выбран третий день недели (по умолчанию).Мне нужно отцентрировать его в окне «Переработчик», а затем, когда я выбрал другой день в моем перерабатывающем предприятии, необходимо снова выполнить повторную центрирование с выбранным элементом.Это мой код:

        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)
                }
            }
        })

1 Ответ

0 голосов
/ 18 января 2019

Я думаю, вы ищете SpanHelper

SnapHelper snapHelper = new LinearSnapHelper();
snapHelper.attachToRecyclerView(yourRecyclerView);

Пожалуйста, посмотрите на

для получения дополнительной информации.

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