- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI
qualifiedName:(NSString *)qName
attributes:(NSDictionary *)attributeDict{
//currentElenet is NSString
currentElement = [elementName copy];
if ([elementName isEqualToString:@"struct"]) {
self.post = [[Question alloc] init];
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
if ([currentElement isEqualToString:@"string"]) {
post.text = [NSString stringWithFormat:@"%@ %@", post.text, string];
}
}
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI
qualifiedName:(NSString *)qName{
if ([elementName isEqualToString:@"struct"]) {
[conversations addObject:post];
[post release];
post = nil;
}
}
//Question.m file
@synthesize text
-(id)init{
self = [super init];
if (self == nil) {
}
else {
//declared as retain in .h file
text = [[NSString alloc]initWithString:@""];
}
return self;
}
-(void)dealloc{
[super dealloc];
[title release];
}
Ребята, вы не видите здесь утечки памяти?Я вызываю методы делегата NSXML, и он в основном помещает экземпляр «Question» в NSMutableArray.Я проверил прибор, и во время его анализа произошла утечка памяти.Но я не понимаю, почему ...