方法可能无法回应

时间:2011-04-22 15:13:51

标签: iphone objective-c

在一个类(名为TimeDetails)中,我需要调用一个方法(类方法),但在编译期间我收到此消息:TimesDetails可能无法响应'generateTimeOfPassage',(一个方法调用另一个方法并发送一个NSString对象。(在这种情况下,返回nil)。

<。>在.h文件中我声明了这样的方法:

+(NSString *)generateTimeOfPassage:(NSString *)_timeString;
<。>文件中的

-(void)initWithTimeData:(NSString *)_timeString{
    [super init];
    passage=[self generateTimeOfPassage:_timeString]; ---I have the message here...
}
+(NSString *)generateTimeOfPassage:(NSString *)_timeString{

    return nil;
} 

谢谢!

马克西姆

2 个答案:

答案 0 :(得分:6)

+ generateTimeOfPassage是一个类方法,所以它应该使用类名而不是对象来调用:

passage=[TimeDetails generateTimeOfPassage:_timeString];

答案 1 :(得分:2)

如果前面有+,那么它就是一个类方法(在Java中,这将被称为静态方法)。当有-时,它就是一个实例方法。 See here for further explanation.