由于某些原因,我的xml解析不会运行,日志NSLog(@"集合视图中的主题:%@",self.topic); 显示正确的值,但我的解析方法都没有运行。我在多个其他View控制器中使用过NSXMLParser,直到现在我还没有遇到任何问题。最大的区别在于,这是在UICollectionView中,我认为不会影响它,但我无法看到它可能出错的地方。 情侣笔记:
除NSLog之外的所有其他日志(@"集合中的主题查看:%@",self.topic);正在运行
-(void)runXMLParse{
//runs the parse
NSLog(@"topic at collection View:%@",self.topic);
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://***********/topicMembers.php?topic=%@",self.topic]];
parser=[[NSXMLParser alloc] initWithContentsOfURL:url];
[parser setDelegate:self];
[parser setShouldResolveExternalEntities:NO];
[parser parse];
}
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict {
element = elementName;
NSLog(@"parser called");
if ([element isEqualToString:@"Members"]) {
item = [[NSMutableDictionary alloc] init];
memberUpdate = [[NSMutableString alloc] init];
NSLog(@"Members Rec");
}
}//define variables to extract info from xml doc
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {
//search for tags
NSLog(@"Step 1");
if ([element isEqualToString:@"username"]) {
[memberUpdate appendString:string];
NSLog(@"Username found");
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
NSLog(@"3");
if ([elementName isEqualToString:@"username"]) {
[item setObject:memberUpdate forKey:@"member"];
[MemberList addObject:[memberUpdate copy]];//The problem lies in add objects
NSLog(@"member update ::%@",memberUpdate);
}}
答案 0 :(得分:1)
这应该是一个解析错误。
尝试实施parserErrorOccurred:
方法以了解更多信息。