解析&在gridview中显示图像

时间:2012-06-14 13:07:06

标签: iphone ios cocoa-touch

我有一个包含少量图像的xml,我需要在网格视图中显示图像。 我能够解析图像URL,但在显示网格视图时,只显示xml的最后一个图像。我有以下代码。

 - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI 
qualifiedName:(NSString *)qualifiedName attributes:(NSDictionary *)attributeDict{
   if(nil != qualifiedName){
           elementName = qualifiedName;
   }
   if ([elementName isEqualToString:@"images"]) {
           self.ixml = [[ImageObj alloc]init];
   } 
   else if([elementName isEqualToString:@"image"] )


   {
           self.currentElement = [NSMutableString string];
   } else {
           self.currentElement = nil;
   }        
}




 - (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
   if(nil != qName){
           elementName = qName;
   }
   if([elementName isEqualToString:@"image"]){
   self.ixml.imageName=self.currentElement;
           NSLog(@"data %@",self.currentElement);
   }
 else if([elementName isEqualToString:@"images"])    {
           [[self imagerssItems] addObject:self.ixml];
   NSLog(@"self ixml %@",self.ixml);
    NSLog(@"self  %@",imagerssItems);
   }
}

所有网址都显示在登录NSLog(@"data %@",self.currentElement);但显示在以下行

NSLog(@"self ixml %@",self.ixml); NSLog(@"self %@",imagerssItems);

它表示只设置了一个元素。

我错过了什么吗?指导会有所帮助。

谢谢。

修改

我们有xml格式如下 -

<images>
<image>link here</image>
<image>link here</image>
<image>link here</image>
</images>

解析过程是否正确?

1 个答案:

答案 0 :(得分:0)

使用此委托存储在数组中。

//Receive string of current element
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
   {


   }

然后在“didEndElement”委托中打印