Как реализовать ItemAnimator из RecyclerView для отключения анимации notifyItemChanged
В моем проекте мне нужно отключить анимацию «изменения»RecyclerView
в то время какnotifyItemChanged
.
Я исследовал в источникеRecyclerView
и был переопределенandroid.support.v7.widget.DefaultItemAnimator
как показано ниже:
private static class ItemAnimator extends DefaultItemAnimator
{
@Override
public boolean animateChange(RecyclerView.ViewHolder oldHolder, RecyclerView.ViewHolder newHolder, int fromX, int fromY, int toX, int toY) {
if(oldHolder != null)
{
oldHolder.itemView.setVisibility(View.INVISIBLE);
dispatchChangeFinished(oldHolder, true);
}
if(newHolder != null)
{
dispatchChangeFinished(newHolder, false);
}
return false;
}
}
Но я не уверен, что я соответствую спецификации документа Google:RecyclerView.ItemAnimator.animateChange
Согласно моему пониманию исходного кода, если я не переопределю метод должным образом, oldHolderне буду быть переработанным.
Пожалуйста, помогите мне понять, как переопределитьanimateChange
правильно.