UIImageView потребляет память, когда скрыто? (iOS)

#ios #memory #memory-management #uiimageview

#iOS #память #управление памятью #uiimageview

Вопрос:

Требуется ли UIImageView память, когда она скрыта? Тот же вопрос для alpha = 0.0

Я много работаю со скрытыми изображениями, и мне интересно, все ли они по-прежнему потребляют память.

Более конкретно, я хотел бы знать, что для tableview.

Спасибо

Ответ №1:

Конечно, если в представление загружено изображение, оно загружается, потому UIImageView что это просто a UIView , у которого есть UIImage свойство @с retain атрибутом, поэтому оно сохраняет изображение.

Тот факт, что вид виден или нет, конечно, ничего не меняет, и, надеюсь, потому, что в противном случае iOS не сможет загрузить UIImage его снова, если вы UIImageView снова установите видимый (как только image свойство будет затронуто UIImageView , UIImageView оно не может знать источник изображения, было ли оно загружено из файла, URL, сгенерированный программно, …?), и даже если бы он знал, что перезагрузить его было бы сложно (для загрузки и декодирования может потребоваться некоторое время)

Если вы не используете UIImageView изображение an, по крайней мере, установите для его image свойства nil значение, чтобы скрыть его (и перезагрузите / повторно измените изображение самостоятельно, если вам нужно его повторно отобразить, но если оно используется в UITableView из-за механизма повторного использования / повторного UITableViewCells использования, вероятно, это никогда не будет тот же образ, что и раньше).установить в любом случае)