为什么我会遇到构建错误(当我尝试调用它时使用未声明的标识符'methodName'?

时间:2013-04-04 20:14:49

标签: ios objective-c

我已在.m文件中定义了此方法:

-(void)showHTMLHelp:(NSString *)htmlString pointTo:(UITextField *)textField background:(UIColor *)bgColor  {

}

这是在.h文件中:

-(void)showHTMLHelp:(NSString *)htmlString pointTo:(UITextField *)textField background:(UIColor *)bgColor;

这是我试图调用的地方,但是使用未声明的标识符'showHTMLHelp'构建错误。

[showHTMLHelp htmlString:html pointTo:tfShopOpens background:[UIColor whiteColor]]; 

正如您所看到的,它是在.h文件中声明的,它被导入到.m文件中(正常情况下)。是什么造成的?我看过谷歌和SO(没有发现具体的),做了多个Clean's,它不会消失。我试过像这样把'self'放在前面:[self.showHTMLHelp]然后我得到:

  

在'PreferencesViewController *'

类型的对象上找不到属性'showHTMLHelp'

我做错了什么,我该如何解决?

2 个答案:

答案 0 :(得分:3)

因此,您调用的方法名称不正确(您有参数名称),并且您需要在self上调用它:

[self showHTMLHelp:html pointTo:tfShopOpens background:[UIColor whiteColor]]; 

答案 1 :(得分:2)

你有正确的想法:

[self.showHTMLHelp...

您需要首先说明您正在调用方法的对象,然后调用该方法。但是,您不能使用点表示法。您将使用它来访问属性。它应该看起来像:

[self showHTMLHelp:html pointTo:tfShopOpens background:[UIColor whiteColor]];