У меня есть notifyDataSetChanged()
, за которым следует notifyItemChanged(0, Unit)
с полезной нагрузкой, вызываемой для того же адаптера, содержащего, скажем, 3 элемента.
Каждый из вызовов осуществляется внутри view.post()
.
Я ожидаю, что onBindViewHolder()
будет вызываться 4 раза: 3 раза для notifyDataSetChanged()
и один раз для notifyItemChanged()
На самом деле он вызывается 3 раза, все с пустой полезной нагрузкой.
Но если я заменю view.post()
на view.postDelayed({notifyItemChanged(0, Unit)}, 1000)
, все работает как оберег.
Не могли бы вы объяснить, почему это происходит?