RecyclerView с NonScrollingGridLayoutManager становится медленным при перетаскивании - PullRequest
0 голосов
/ 25 апреля 2019

Я пытаюсь получить сетку в программе повторного просмотра с помощью NonScrollingGridLayoutManager, а для обратного вызова я использую ItemTouchHelperCallback, чтобы я мог перетаскивать элементы в любую позицию в сетке. Это работает нормально, но потом становится медленным и вызывает застревание пользовательского интерфейса. Любые выводы будут очень полезны!

    val recyclerView: RecyclerView = findViewById(R.id.revWords)
    recyclerView.setHasFixedSize(true)
    val layoutManager = NonScrollingGridLayoutManager(this)
    layoutManager.flexDirection = FlexDirection.ROW
    layoutManager.justifyContent = JustifyContent.CENTER
    recyclerView.layoutManager = layoutManager
    screenAdapter = ScreenAdapter(array) {
        touchHelper.startDrag(it)
    }
    val callback = ItemTouchHelperCallback(adapter)
    recyclerView.adapter = screenAdapter
    touchHelper = ItemTouchHelper(callback)
    touchHelper.attachToRecyclerView(recyclerView)
...