2

私はviewDidLoadからのようなViewController.mファイルを持っています:

_registerButton = [AuthButton buttonWithType:UIButtonTypeSystem];
[_registerButton setTitle:@"Register" forState:UIControlStateNormal];
_registerButton.frame = CGRectMake(0.0, 0.0, self.screenWidth / 2.0 - 1.0, 60.0);

[_registerButton addTarget:self action:@selector(buttonPressed) forControlEvents:UIControlEventTouchUpInside];

...

 (IBAction)buttonPressed:(UIButton *)sender
{
    //sentder.titleLabel
    [sender setTitle:@"Registers" forState:UIControlStateNormal];
} 

registerButton は、プロパティを介して宣言された AuthButton です。buttonPressed をオーバーライドして IBAction コードを AuthButton.m クラスに移動するにはどうすればよいですか? 構文に混乱しています (objective-c の新機能)。

4

1 に答える 1

3

addTarget属性は必要なものです。あなたの例では、ターゲットはselfであるため、ボタンを押すイベントは現在のオブジェクトのセレクターを探します。

ターゲットを のインスタンスに変更しAuthButton、対応するセレクターを記述すれば問題AuthButton.mありません。

于 2013-09-11T08:24:50.233 に答える