Выпуск UIImage после использования - PullRequest
0 голосов
/ 22 сентября 2010

Я хочу узнать, как правильно распределить uiimage и освободить его для управления памятью.
При использовании следующего кода происходит сбой при освобождении,
, если я не использую [релиз устройства];
Программа не падает, но показывает утечку для тепловизора.Есть идеи для решения?

UIImage *imager = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:s@"nameofimage" ofType:@"jpg"]];
UIImageView *imageView = [[UIImageView alloc] initWithImage:imager];

[imageView release];

[imager release];

1 Ответ

0 голосов
/ 10 февраля 2011

Правильный способ управления памятью такой же, как и у вас.

UIImage *imager = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"nameofimage" ofType:@"jpg"]]; 
UIImageView *imageView = [[UIImageView alloc] initWithImage:imager];
[imager release];
[imageView release]; 

Может быть, это сработает, если вы сначала выпустите uiimage, чем uiimageview

Я не нахожу ошибок в этом коде. Если приложение дает сбой, проверьте, используете ли вы ту же ссылку на объект где-либо еще после того, как оно будет выпущено.

...