无法将NSXMLParser委托设置为self

时间:2011-05-26 15:39:29

标签: iphone objective-c ios debugging nsxmlparser

我正在尝试创建NSXMLParser并调用其委托方法。在将代表设置为self(下面的第2行)时,我收到警告Sending 'XMLParserViewController *' to a parameter of incompatible type 'id <NSXMLParserDelegate>'.我在这里缺少什么?

NSXMLParser *parser = [[NSXMLParser alloc]initWithData:data];
[parser setDelegate:self];
[parser parse];
[parser release];

2 个答案:

答案 0 :(得分:24)

将行@interface XMLParserViewController : UIViewController(在您的.h文件中)更改为:

@interface XMLParserViewController : UIViewController <NSXMLParserDelegate>

您忘记将UIViewController设置为委托的委托(如果愿意的话)。

答案 1 :(得分:5)

在自我宣言中你应该:

@interface YourClass <NSXMLParserDelegate>

让编译器知道您的类符合NSXMLParserDelegate协议。