Да UIImageView setImage действительно просачивается!
Если вы циклически перебираете кучу изображений с
[yourImageView setImage:[UIImage imageNamed:@"sampleImage.png"]];
, вы можете увидеть, как увеличивается использование памяти инструментов.Похоже, это что-то вроде кэширования, поскольку после циклического повторения использования памяти все изображения останутся без изменений.
Правильный, или, по крайней мере, без утечек способ сделать это:
NSString *thePath = [[NSBundle mainBundle] pathForResource:@"sampleImage" ofType:@"png"];
UIImage *newImage = [[UIImage alloc] initWithContentsOfFile:thePath];
[yourImageView setImage:newImage];
Я подтвердил это в своем коде, так как мое приложение перебирало множество больших файлов изображений.