ItemTouchHelper не инициирует пролистывание - PullRequest
0 голосов
/ 22 сентября 2019

Я просмотрел множество руководств по функциональности смахивания в RecyclerView.Когда я присоединяю ItemTouchHelper, он не влияет на ViewHolder.

Я поместил точку останова в метод onSwiped, но он даже не достигает там, когда я пытаюсь провести пальцем.Я сделал новый проект и только что реализовал случайное просмотрение с некоторыми держателями просмотров.Я прикрепил ItemTouchHelper, и у меня возникла та же проблема.

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
    val model = ViewModelProviders.of(this)[ViewModel::class.java]
    val dues = model.dues
    val adapter = Adapter<Due>(R.layout.card_view_dues, fragmentManager!!)
    dues.observe(this,
        Observer<MutableList<Due>> {
            adapter.list = it
        }
    )
    val itemTouchHelper = object: SimpleCallback(0, LEFT and RIGHT) {
        override fun onMove(
            recyclerView: RecyclerView,
            viewHolder: RecyclerView.ViewHolder,
            target: RecyclerView.ViewHolder
        ) = false

        override fun onSwiped(viewHolder: RecyclerView.ViewHolder, direction: Int) {
            dues.value?.removeAt(viewHolder.adapterPosition) //set breakpoint here
            adapter.notifyDataSetChanged()
        }
    }
    ItemTouchHelper(itemTouchHelper).attachToRecyclerView(recyclerView)
    recyclerView.apply {
        layoutManager = LinearLayoutManager(activity!!.applicationContext)
        setHasFixedSize(false)
        this.adapter = adapter
    }
}

Я также заменил:

ItemTouchHelper(itemTouchHelper).attachToRecyclerView(recyclerView)

на

ItemTouchHelper(itemTouchHelper).attachToRecyclerView(activity!!.findViewById<RecyclerView>(R.id.recyclerView))

, но это все еще непохоже на работу.Что возможно пошло не так?

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