В чем разница между ListView и RecyclerView?
RecyclerView был создан как улучшенная замена ListView. Основные отличия следующие:
1. RecyclerView переиспользует ячейки списка при скроллинге. Для реализации этой логики используется класс ViewHolder.
В ListView тоже можно реализовать адаптер с ViewHolder, но это необязательно и требует написания бойлерплейт кода.
2. RecyclerView разделяет хранение данных и логику отображения. С RecyclerView легко изменить лэйаут в рантайме, используя различные реализации абстрактного класса LayoutManager.
3. Логика отображения анимации элементов вынесена из RecyclerView в класс ItemAnimator.
В целом RecyclerView имеет более гибкий API, чем ListView, благодаря хорошему дизайну и соответствию принципу единственной ответсвенности.
#View
RecyclerView был создан как улучшенная замена ListView. Основные отличия следующие:
1. RecyclerView переиспользует ячейки списка при скроллинге. Для реализации этой логики используется класс ViewHolder.
В ListView тоже можно реализовать адаптер с ViewHolder, но это необязательно и требует написания бойлерплейт кода.
2. RecyclerView разделяет хранение данных и логику отображения. С RecyclerView легко изменить лэйаут в рантайме, используя различные реализации абстрактного класса LayoutManager.
3. Логика отображения анимации элементов вынесена из RecyclerView в класс ItemAnimator.
В целом RecyclerView имеет более гибкий API, чем ListView, благодаря хорошему дизайну и соответствию принципу единственной ответсвенности.
#View