Ну, у меня есть RecyclerView с адаптером, и все работает отлично. Периодически обновляются обновления в наборе данных ArrayList. Таким образом, элементы и их элементы, а также их позиция в списке меняются. Это достигается простой сортировкой и ручным вызовом этих методов, когда что-то происходит:
// swapping two items
Collections.swap(items, i, j);
itemsAdapter.notifyItemMoved(i, j);
// adding a new one
itemAdapter.notifyItemInserted(items.size());
// when updating valus
itemAdapter.notifyItemChanged(i);
Последний из которых является причиной моего страдания. Каждый раз, когда элемент обновляется, запускается небольшая анимация "мигания".
Я нашел пару решений для этого:
// disabling all animations
recyclerView.getItemAnimator().setSupportsChangeAnimations(false);
// or
// setting the animation duration to zero,
recyclerView.getItemAnimator().setChangeDuration(0);
Но оба они убивают анимацию, когда элементы перемещаются (меняются местами). Я просто хочу переопределить одну анимацию и сохранить всю эту магию. Есть ли способ сделать это? И если он переопределяет ItemAnimator, есть ли у кого-нибудь простой пример?
Спасибо заранее!