由于未捕获的异常而终止应用程序

时间:2012-01-17 17:21:28

标签: iphone xml xcode nsxmlparser

我使用NSXMLParser解析XML,如Apple Developer Documentation中所述。

我做解析器很好,但是当我想放入一个NSString时,对象解析器出现错误,使用SIGABRT。

例外是:

 Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ClinicasAsociadasProfesionales objectForKey:]: unrecognized selector sent to instance 0x606c8c0'

我将对象保存在te NSMutableArray中,如:

-(void)parser:(NSXMLParser *)parser 
                         didEndElement:(NSString *)elementName 
                         namespaceURI:(NSString *)namespaceURI 
                         qualifiedName:(NSString *)qName
{

    if([elementName isEqualToString:@"Clinicas"])
    {
        return;
    }

    if([elementName isEqualToString:@"Clinica"]) 
    {
        [arrayClinicas addObject: varClinicasAsociadasProfesionales];
        [varClinicasAsociadasProfesionales release];
    }


    if([elementName isEqualToString:@"NombreClinica"])
    {
        [varClinicasAsociadasProfesionales setValue:soapResults forKey:elementName];
    }

    if([elementName isEqualToString:@"IdClinica"])
    {
        [varClinicasAsociadasProfesionales setValue:soapResults forKey:elementName];
    }

    soapResults=nil;
    [soapResults release];
    elementoEncontrado = NO; 
}

1 个答案:

答案 0 :(得分:2)

崩溃不适用于此代码..您正在使用的地方

[ClinicasAsociadasProfesionales objectForKey:]

相反,你应该使用

[ClinicasAsociadasProfesionales valueForKey:]

当您使用setValue时:ForKey:将值设置为ClinicasAsociadasProfesionales对象的方法