Значение, сохраненное в 'image' во время его инициализации, никогда не читается - PullRequest
2 голосов
/ 15 декабря 2011

При запуске анализа в xcode 4.2 у меня появляется предупреждение «Значение, сохраненное в 'image', во время его инициализации никогда не читается».Кто-нибудь может мне помочь, что не так с кодом?

UIImage *image=[[[UIImage alloc] init]autorelease];
if (carousel==recipeCarousel) {
    image = [recipeItems objectAtIndex:index];
} else {
    image = [packItems objectAtIndex:index];
}    
UIView *view = [[[UIImageView alloc] initWithImage:image] autorelease];
return view;

Спасибо.

1 Ответ

5 голосов
/ 10 февраля 2012

Вы распределили UIImage с этим кодом

UIImage *image=[[[UIImage alloc] init]autorelease];

но позже вы назначаете объект в recipeItems или packItems

так что вы потеряете контроль над выделенным объектом.

Так что вы можете сделать это

UIImage *image = nil;

if (carousel==recipeCarousel) {
    image = [recipeItems objectAtIndex:index];
} else {
    image = [packItems objectAtIndex:index];
}    

или

NSArray *targetItems = nil;

if (carousel==recipeCarousel) {
    targetItems = recipeItems;
} else {
    targetItems = packItems;
}    

UIImage *image = [targetItems objectAtIndex:index];
...