【问题标题】:Why will my NSObject not work as a NSXMLParserDelegate?为什么我的 NSObject 不能作为 NSXMLParserDelegate 工作?
【发布时间】:2012-01-13 14:38:40
【问题描述】:

我正在尝试使用 NSXMLParser 来解析与我的主要文档类型相关的属性文件。最初我尝试在我的文档中创建一个应该创建一个 NSXMLParser 然后将自己设置为委托的方法。因此:

NSXMLParser *infoParser = [NSXMLParser alloc] init];

[infoParser setDelegate:self];

这只是提出了一个警告,我正在传递一个不兼容的 id。我查看了文档并添加了 NSXMLParserDelegates 的所有可选方法,现在将此实现移至 NSObject。但仍然不兼容的 id。有什么我应该做的额外的吗?除了包含here 提到的方法之外,我还需要做什么才能符合此协议?

【问题讨论】:

  • 在您的@interface 文件中是否包含

标签: objective-c cocoa nsxmlparser


【解决方案1】:

你需要声明你的接口符合 NSXMLParserDelegate 协议

@interface MyClass <NSXMLParserDelegate>{

}
@end

并至少实现所有必需的方法。

【讨论】:

  • 谢谢!会将您的答案标记为正确答案,但@Kashiv 就在您之前到达那里,显然不可能有两个正确答案
【解决方案2】:

在您的 .h 文件中的 @interface YourObject : NSObject 行中添加 &lt; NSXMLParserDelegate &gt;,错误应该会出现

【讨论】:

  • 感谢一些我在学习中还没有遇到过这种声明!
猜你喜欢
  • 2013-05-14
  • 2012-01-15
  • 2017-07-11
  • 2013-08-09
  • 1970-01-01
  • 1970-01-01
  • 2017-04-23
  • 2021-07-30
相关资源
最近更新 更多