3

Snap 1:13 Просмотры, когда начинается активность. http://imgur.com/0MmZjg0 Snap 2:14 Просмотров 1 наверху + 1 внизу. http://imgur.com/oPJAonm Я новичок в android и пытаюсь понять RecyclerView. Что делает Recycler, когда вид выходит из активности при прокрутке, он вызывает onBindViewHolder, который связывает новые данные с существующим представлением, которое только что вышло из кадра активности. но пока мы прокручиваем активность, наступает время, когда мы все еще можем видеть представление, которое выходит из кадра активности (преступление № 8 в Snap 2), а также можно увидеть новое представление, которое будет создано с помощью зритель преступления № 8 в этом случае (т. е. преступление № 21 в Snap 2). Поэтому я смущен тем, что если предыдущий зритель (преступление № 8) еще не был повторно использован, как создается новый зритель (преступление № 21).?Как RecyclerView получает 1 дополнительный вид от адаптера при прокрутке

+0

https: // WWW. youtube.com/watch?v=LqBlYJTfLP4 Посмотрите, что видео полностью. Его довольно хорошее объяснение – gaara87

+0

Он не использует повторно держатели для просмотра. ИТ повторно использует представления. И если он создает новые, необходимые для заполнения. Так что, если при запуске ваш просмотр ресайклера имеет место для двух видов, и по мере прокрутки он имеет место для 3, он создаст новое представление (с соответствующим держателем вида) для третьего представления. –

ответ

1

Он не удаляет старую, пока он действительно не делает это больше не нужно

Используйте getItem() ovverriden метод, чтобы понять, когда новый элемент создается :)

+0

Хорошо, я понимаю, что он не попросит адаптер заполнить новую информацию, пока она больше не понадобится предыдущему ViewHolder. так ли это означает, что он просит Адаптер сделать дополнительный ViewHolder каждый раз, когда мы прокручиваем.? –

+0

Вид. Предположим, вы прокручивали вниз, и вы можете видеть слоты 3-9 ... Это будет (я точно не знаю, сколько будет загружено), но он будет загружать, скажем, слоты 10-12 в память, но он будет держать слоты 0-2, пока не потребуется освободить память. –

Смежные вопросы