8 (499) 490-77-32

8 (4832) 30-19-32

Получить консультацию

0
Нет товаров
 x 
Корзина пуста

Для вывода списка данных удобно использовать новый View – RecyclerView.
Новичкам достаточно сложно понять принцип работы и реализацию данного компонента.
В этой статье я постараюсь объяснить простыми словами как это работает.
С помощью этого компонента можно удобно вывести массив данных в виде «списка», не создавая в ручную все количество View элементов, достаточно создать один фрагмент разметки в виде шаблона и подсунуть ему массив данных через Адаптер.

Адаптер нужен для того, чтобы, «взять данные», создать нужное количество View по нашему шаблону, заполнить их данными и вывести их в компоненте RecyclerView.

Тут нужно сделать одну заметку, поиск нужного элемента с помощью findViewById достаточно тяжеловесная операция. Если данных у нас очень много, память устройства может переполниться и программа аварийно закроется. Для того, чтобы освободить ресурсы устройства RecyclerView использует ранее созданные компоненты View, если они больше не применяются (допустим вы прокрутили список в низ и верхние View ушли с экрана, в этом случае они не уничтожаются, а заполняются новыми данными и отображаются заново с низу).

Класс RecyclerView требует обязательного переопределения 3 методов:

  • 1. getItemCount ()– выводит общее количество элементов массива данных.
  • 2. onCreateViewHolder()– создает новый объект ViewHolder когда это необходимо.
  • 3. onBindViewHolder() – заполняет обьект ViewHolder необходимыми данными.


Перед тем как приступить к практике рассмотрим упрощенный алгоритм работы класса. Я его сделал максимально просто для понимания работы.

shema