无法找出发送给XMLparser实例的无法识别的选择器

时间:2013-05-13 21:10:09

标签: iphone objective-c

我有一个函数XMLParser工作,但我正在尝试扩展该类来处理我的应用程序需要的不同XML文件。

我收到错误“因未捕获的异常而终止应用程序'NSInvalidArgumentException',原因:' - [XMLParser initXMLParserForValidation]:无法识别的选择器发送到实例0x7564ea0'”这是代码。

- (void)validateEmail:(NSString *)urlString {
NSURL *url = [NSURL URLWithString:urlString];
NSData *data = [[NSData alloc] initWithContentsOfURL:url];
NSXMLParser *nsXmlParser = [[NSXMLParser alloc] initWithData:data];
XMLParser *parser = [[XMLParser alloc] initXMLParserForValidation];
[nsXmlParser setDelegate:parser];

BOOL wasSuccessful = [nsXmlParser parse];

if (wasSuccessful) {
    self.result = [parser result];
} 
}

我已经放了断点和东西,但是甚至没有进入我的initXMLParserForValidation类。不管怎么说,无论如何。

- (XMLParser *) initXMLParserForValidatation {
self = [super init];
_result = [[ValidationResult alloc] init];
return self;
}

我试图模仿正在运行的代码,但我看不出任何差异。使我抓狂。不过,我是这款iphone的新手。非常感谢。

1 个答案:

答案 0 :(得分:3)

您的类'init方法的声明中存在拼写错误:

initXMLParserForValida * TA *和灰

然后你正在调用这样的init方法,并使用正确的拼写,但不存在:

initXMLParserForValidation

删除额外的ta,你应该好好去!