Как добавить анимацию в RecyclerView

«Как добавить анимацию в RecyclerView» — вопрос из категории UI и Views, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для анимации в RecyclerView используйте ItemAnimator. По умолчанию включен DefaultItemAnimator. Можно кастомизировать его или создать свой.

Пример анимации элементов при добавлении:

val recyclerView = findViewById<RecyclerView>(R.id.recyclerView)
recyclerView.itemAnimator = DefaultItemAnimator().apply {
    addDuration = 500 // время анимации добавления (мс)
}

Кастомная анимация через RecyclerView.ItemAnimator:

class CustomAnimator : DefaultItemAnimator() {
    override fun animateAdd(holder: RecyclerView.ViewHolder): Boolean {
        holder.itemView.alpha = 0f
        holder.itemView.animate().alpha(1f).setDuration(300).start()
        return super.animateAdd(holder)
    }
}
// Применение:
recyclerView.itemAnimator = CustomAnimator()

Для более сложных анимаций можно использовать ItemTouchHelper или библиотеки вроде RecyclerViewAnimations.