2010-10-13 51 views
6

我正在使用解析xml文档的NSXMLParser。每次解析器找到一个元素时,您都必须设置我们将被调用的委托。我看着这些例子都设置委托是已createing同一类:如何在不同的类中设置代理

NSXMLParser *parser = [[NSXMLParser alloc] initWithContentsOfURL:filename]; 
[parser setDelegate: self]; 

其他例子设置委托成为父母。如果我想让另一个班级(与同一班级无关)处理该委托,该怎么办?这样做的语法是什么?

我已经这样做了,但它不起作用。

@interface Util : NSObject <NSXMLParserDelegate> { 
    //Some code here 
} 

//functions for the delegate and the implementation on the Util.m 
//. 
//. 
//. 

Thx为您的答案。

我忘了说,在调用委托时,我认为这将是这样的:

[parser setDelegate:Util]; 

我以为这知道,设定的委托对同一类的消息是:

[parser setDelegate:self]; 

回答

17

您必须先创建Util对象。

委托必须是一类:)

Util* util = [[Util alloc] init]; 
[parser setDelegate:util]; 
[util release]; 
的实际实例