Краткое объяснение
В настоящее время у меня есть UITableView
, который содержит ячейки видео с веб-сайта.Кроме того, каждая ячейка (которая представляет видео) имеет определенное уменьшенное изображение.Эти изображения загружаются асинхронно с использованием NSURLConnection
(поэтому мне не нужно беспокоиться о потоке самостоятельно).Когда эти объекты изображений загружены, они просто уведомляют UITableView
, чтобы обновить ячейку, которой они принадлежат.
Моя проблема
Как обычно, будет выбрано 10 новых видеона UITableView
каждый звонок.Это означает, что пользователю разрешено перемещать ячейку внизу UITableView
, чтобы запросить 10 новых видео и так далее.Проблема здесь в том, что быстро будет много использования памяти, потому что данные для всех миниатюрных изображений (в UITableView
) все равно будут существовать, несмотря ни на что.
Есть ли разумный способ, которым вы можетеотменить выделение объектов изображения, которые в данный момент не отображаются?
Кроме того, UITableView
просто визуализирует все свои ячейки непосредственно из массива всех моих видеообъектов, когда-либо полученных с веб-сайта.Это означает, что нет никаких ограничений относительно того, сколько раз пользователь может запрашивать новые видео, что делает этот массив все больше и больше.Правильно ли хранить такие массивы в памяти все время?Или вы должны вместо этого удалить те, которые выходят из поля зрения, и запросить их позже?