我能够从iTunes获得前十大免费应用程序,但是当我尝试获取图像时,我遇到了一个问题,我得到了3张图片。
这是拉取字符串的代码:
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {
if ([element isEqualToString:@"im:name"]){
[title appendString:string];
}else if ([element isEqualToString:@"im:image"]) {
[image appendString:string];
}
}
因为它有3个图像尺寸,所以它们全部拉出来:
<im:image height="53">
<im:image height="75">
<im:image height="100">
如果我尝试放置我想要的图像尺寸,它就不起作用。
我该怎么办?
答案 0 :(得分:0)
使用此回调
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict;
并且只要元素名称为im:image
,就抓住attributeDict来获取属性。
如果要存储所有高度,则必须创建一个数组或类似的东西,但回调就是你要做的事情。所以像这样:
-(void)parser:(NSXMLParser *)parser
didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI
qualifiedName:(NSString *)qName
attributes:(NSDictionary *)attributeDict {
if([elementName isEqualToString:@"im:image"])
[heightArray addObject:[attributeDict objectForKey:@"height"]];
}