ImageView в моем .h. Я использую эту строку в моем -viewDidLoad, мне не нужно представление, когда оно выходит за экран:
imageView = [[[UIImageView alloc] initWithImage:myImage] autorelease];
Я думаю, что я делаю, назначая выделенный UIImageView моему imageView, и если я автоматически освобождаю, то отсрочка будет отключена, потому что мой -dealloc освобождает? (извините, если я не прав)
если я проверю свой -dealloc:
- (void)dealloc {
NSLog(@"%i", [photo retainCount]);
[photo release];
NSLog(@"%i", [imageView retainCount]);
[imageView release];
[super dealloc];
}
В NSLog значение сохранения для imageView равно 1, я предполагаю, что когда он собирается сделать [super dealloc], он пытается сделать еще 1 отсчет сохранения для imageView, когда он уже равен 0 из-за [выпуска imageView]
если у меня есть строка: imageView = [[UIImageView alloc] initWithImage:myImage];
затем в NSLog число сохранений равно 2, 1 поступает в [supper dealloc]
если я использую метод kk6yb , то приложение работает без проблем, однако я думаю, что мне не нужно было бы делать это таким образом, потому что, используя его, я проверяю счет сохранения в dealloc it также 2 в NSLog ...
Я в замешательстве, я вчера много читал об управлении памятью, чтобы лучше справиться с ситуацией, поскольку я выпускаю imageView в -dealloc. Мне кажется, мне не нужно автоматически выпускать эту строку?
Есть ли способ проверить утечки памяти в xCode?
Спасибо!