Сколько элементов может отобразить представление ресайклера, прежде чем выйдет из строя память? тысяча? миллионы?
Я не уточняю, будет ли переработчик отображать элементы сразу или по частям, потому что в конце (при продолжении прокрутки) все элементы будут загружены.
Спасибо
@AkshayMahajan Я читал это. Не говорит то, что я прошу. Извините .... Он говорит только о том, что он перерабатывает представления ... хорошо ... А как насчет размера ArrayList, в котором хранятся данные до того, как они будут помещены в адаптер?
Тогда ваш вопрос не связан с представлением Recycler, он связан с ArrayList.
Я тестировал не менее 90 тыс. Элементов, но не потерпел неудачу, без OOM. Мой элемент содержит просмотр изображений (управляется фреской), 5 текстовых изображений, 1 статичный маленький значок.
Значит, загрузить все эти предметы сразу будет нормально?
ну технически RC view не всех загрузит. Он будет загружать только элементы в видимой области. Также он перерабатывает старые представления для повторного использования. Придет только загрузка в память - это общий размер ваших объектов (в моем ответе это 90k obj). Это не будет настолько большим, чтобы вызвать OOM. И если вы используете фреску, как я сказал, для обработки изображений. Тогда все будет совершенно нормально.
Нет, RecyclerView не будет загружать все элементы независимо от того, как вы прокручиваете. Он повторно использует старые просмотры или создает столько новых, сколько нужно, а затем просто повторно использует их. Также для оптимизации RecyclerView использует Шаблон ViewHolder. Предлагаю вам узнать об этом подробнее
Я рекомендую вам прочитать о Recycler View. medium.com/@nileshsingh/…. Все элементы не загружены, представления повторно используются для отображения новых данных. Так что он никогда не должен выходить из памяти.