#iphone #objective-c #ios #xcode #uitableview
#iPhone #objective-c #iOS #xcode #uitableview
Вопрос:
Я загружаю свой XML в свое приложение для iphone через:
NSArray *Images = [doc nodesForXPath:kName_logo error:nil];//Root node
for (CXMLElement *ImgIcons in Images)
{
NSArray *locImage = [ImgIcons elementsForName:kName_image];
for(CXMLElement *fullImage in locImage)
{
LocationImage = fullImage.stringValue;
locStatImage = LocationImage;
NSLog(@"Image Found %@",LocationImage);
break;
}
}
И это нормально, это возвращает мне правильную строку
2011-11-03 14:48:43.572 Del Search[13152:f203] Image Found http://de1128/directenquirieswebapplicationv3.0/images/logos/PremierInn.jpg
Однако, когда я загружаю его в свою таблицу с помощью следующего:
if (indexPath.section == 0)
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifierImage];
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifierImage] autorelease];
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,320,180)];
imageView.tag = 1;
NSURL *Imageurl = [NSURL URLWithString:[NSString stringWithFormat:@"%@", locStatImage]];
NSData *data = [NSData dataWithContentsOfURL:Imageurl];
UIImage *img = [[[UIImage alloc] initWithData:data] autorelease];
imageView.image = img;
[cell addSubview:imageView];
[imageView release];
}
return cell;
}
Приложение падает. Однако, если я вручную установлю locStatImage, выполнив:
locStatImage = @"http://de1128/directenquirieswebapplicationv3.0/images/logos/PremierInn.jpg";
Все работает нормально. Что я делаю не так, когда устанавливаю locStatImage?
Спасибо
Том
Ответ №1:
Предполагая, что два приведенных выше фрагмента кода взяты из отдельных методов, locStatImage
вероятно, они автоматически освобождаются между получением его из XML и использованием его в вашем методе cellForRowAtIndexPath.
Далее предполагается locStatImage
, что это сохраненное свойство (если оно не должно быть), в вашем первом примере кода вы должны использовать
self.locStatImage = ...