Проблема с производительностью при загрузке больших данных в программе повторного просмотра в окне просмотра - PullRequest
0 голосов
/ 07 декабря 2018

Моя настройка состоит из двух вкладок настройки с ViewPager.Каждая вкладка содержит фрагмент, который содержит обзор переработчика, который отображает список песен.Проблема в том, что при загрузке большого количества песен в просмотрщик интерфейса пользовательский интерфейс просто зависает на некоторое время.Если количество песен превышает 2000, система останавливается на долгое время, а затем выдает ошибку OutOfMemory.

Примечание. При загрузке данных в представление переработчика в виде простого фрагмента или действия не возникает никаких проблем с производительностью.даже если набор данных очень большой.

Как я могу оптимизировать это?

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

Итак, я нашел основной ход проблемы.Recyclerview внутри NestedScrollView.Поскольку мне нужно отобразить три RecyclerViews, мне пришлось использовать NestedScrollView, чтобы обернуть их.Но затем из этого вопроса я понял, что если в nestedScrollView есть просмотр recycler, то он заставит создателя заново создавать все представления перед их рендерингом.Вот почему пользовательский интерфейс зависал каждый раз, когда должны отображаться данные.

0 голосов
/ 07 декабря 2018

Если вы просто хотите отобразить базовую информацию о песнях, вы можете использовать Список в качестве данных, в SongInfo содержит имя, альбом, певца и т. Д., Это не займет много памяти

...