我正在尝试创建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];
答案 0 :(得分:24)
将行@interface XMLParserViewController : UIViewController
(在您的.h文件中)更改为:
@interface XMLParserViewController : UIViewController <NSXMLParserDelegate>
您忘记将UIViewController设置为委托的委托(如果愿意的话)。
答案 1 :(得分:5)
在自我宣言中你应该:
@interface YourClass <NSXMLParserDelegate>
让编译器知道您的类符合NSXMLParserDelegate
协议。