如何从Objective C中的导入类调用方法?

时间:2010-02-15 23:47:59

标签: iphone objective-c cocoa cocoa-touch

我有一些代码从URL获取XML文件,然后使用NSXMLParser解析它。目前,此代码包含在调用它的viewController中。出于可重用的考虑,我希望将解析代码移动到外部类并从viewController调用它。

我尝试按如下方式实现:

创建一个空白的NSObject类文件,将解析代码放入.h和.m文件中,然后在我的viewController.m文件中使用#import语句,在viewController中使用@Class语句。 h文件,所以我可以从viewController类中调用方法。

我不知道该怎么办,或者我是否接近这个错误的方式,请告知。


我在viewController的@interface中使用以下行实例化外部类

XMLParser *xmlParser;

在我的viewController类的viewDidLoad中,我调用了我在XMLParser.m中编写的方法。呼叫执行如下:

[xmlParser fetchXML];

问题在于,当我编译时,我收到以下警告:

'XMLParser' may not respond to '-fetchXML'

当视图在运行时加载时,该方法不会被调用,或者被调用但不会运行

1 个答案:

答案 0 :(得分:3)

您应该有一个名为XMLParser.h的文件,其中包含以下内容:

@interface XMLParser : NSObject
{
    ...
}   
- (void)fetchXML;

然后在viewController.m,应该有:

#import "XMLParser.h"

我怀疑你错过了其中一个步骤。