0

.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 ファイルにインポートされます。これは何が原因ですか?私は Google と SO を見て (具体的なものは何も見つかりませんでした)、複数の Clean を実行しましたが、消えません。[self.showHTMLHelp] のように「self」を前に置いてみましたが、次のようになります。

タイプ「PreferencesViewController *」のオブジェクトにプロパティ「showHTMLHelp」が見つかりません

私は何を間違っていますか、どうすれば修正できますか?

4

2 に答える 2

3

したがって、呼び出しているメソッド名が正しくない (パラメーター名があった) ため、次のように呼び出す必要がありますself

[self showHTMLHelp:html pointTo:tfShopOpens background:[UIColor whiteColor]]; 
于 2013-04-04T20:17:50.227 に答える
2

あなたは正しい考えを持っていました:

[self.showHTMLHelp...

まず、メソッドを呼び出すオブジェクトを指定してから、メソッドを呼び出す必要があります。ただし、ドット表記は使用できません。これを使用して、プロパティにアクセスします。次のようになります。

[self showHTMLHelp:html pointTo:tfShopOpens background:[UIColor whiteColor]]; 
于 2013-04-04T20:22:15.540 に答える