Iphone 如何解决';RootViewController';可能不响应'-ParseXmlFileAttribute:';在Xcode 3.2.3中

Iphone 如何解决';RootViewController';可能不响应'-ParseXmlFileAttribute:';在Xcode 3.2.3中,iphone,xcode,rss,Iphone,Xcode,Rss,我正在制作一个简单的RSS提要iPhone应用程序,我遇到了以下问题: - (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; if ([stories count] == 0) { NSString * path = @"myfeedURL.rss"; [self parseXMLFileAtURL:path]; <-------Error He

我正在制作一个简单的RSS提要iPhone应用程序,我遇到了以下问题:

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];

    if ([stories count] == 0)
    {
        NSString * path = @"myfeedURL.rss";
        [self parseXMLFileAtURL:path]; <-------Error Here
    }
}
-(void)视图显示:(BOOL)动画
{
[超级视图显示:动画];
如果([故事计数]==0)
{
NSString*path=@“myfeedURL.rss”;

[self-parseXMLFileAtURL:path];该方法是在使用后定义的。Objective-C编译器是一个过程,因此它还没有
parseXMLFileAtURL:
的声明。我介绍了三种解决方法:

在使用前对其进行定义:

-(void)parseXMLFileAtURL:(...)... {
  ...
}

-(void)viewDidAppear:(BOOL)animated {
  ...
}
插入标题:

@interface RootViewController ...
...

-(void)parseXMLFileAtURL:(...)...;

@end
或者将其粘贴在“类延续”中:

类延续对于“私有”方法/属性和协议很有用-您可以执行
@interface Foo()
以避免标题意大利面

EDIT:该方法的名称表明它采用NSURL*,但您传递的是NSString*。我会将其改为“URLSING”或采用NSURL*

@interface RootViewController()
-(void)parseXMLFileAtURL:(...)...;
@end

@implementation RootViewController
...