无法将NSXMLParser委托设置为self

NSE*_*rer 6 iphone debugging objective-c nsxmlparser ios

我正在尝试创建一个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];
Run Code Online (Sandbox Code Playgroud)

max*_*ax_ 24

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

@interface XMLParserViewController : UIViewController <NSXMLParserDelegate>
Run Code Online (Sandbox Code Playgroud)

您忘了将UIViewController设置为委托的委托(如果愿意).


Eri*_*k B 5

在自我宣言中你应该:

@interface YourClass <NSXMLParserDelegate>
Run Code Online (Sandbox Code Playgroud)

让编译器知道你的类符合NSXMLParserDelegate协议.