1

UIButton の名前を指定し、そのタイトルを設定できる非常に単純なメソッドがあります。以前は、メインの ViewController に正常に機能するメソッドがありました。しかし、CustomMethods.h/m という名前の新しいファイルを作成し、すべてのメソッドをそこに入れることにしました。

メソッドを移動し、ヘッダーをメイン ビュー コントローラーに #import するとすぐに、以下のエラー メッセージが表示されます。

No visible @interface for ViewController declares the selector 'SetTitleOfButtonNamed:withTitle:'

CustomMethods ファイルで、次のようにメソッドを作成しました。

-(void)setTitleOfButtonNamed:(UIButton *)button withTitle:(NSString *)buttonTitle
{
    [button setTitle:buttonTitle forState:(UIControlStateNormal)];
}

メインの ViewController の viewDidLoad で、このメソッドを呼び出してボタンのタイトルを次のように設定しようとしています。

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSString *btnOneTitle = @"Button 1";
    [self setTitleOfButtonNamed:buttonOne withTitle:btnOneTitle]; // ERROR OCCURS HERE
}

メソッドを独自のファイルにコピーする前は、完全に機能していました。何か案は?

4

1 に答える 1

4

ViewController である「self」で setTitleOfButtonNamed を呼び出しています。メソッドを実装する CustomMethods クラスから呼び出す必要があります。

[self setTitleOfButtonNamed:buttonOne withTitle:btnOneTitle];
于 2012-07-18T23:57:36.787 に答える