0

私はiPhoneで新鮮です..私は1つのボタンを作成し、コーディングを通じてそのボタンでメソッドを呼び出したいと思っています。どうすればよいですか..

UIButton *myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
myButton.frame = CGRectMake(20, 20, 150, 44); // position in the parent view and set the size of the button
[myButton setTitle:@"Click Me!" forState:UIControlStateNormal];
// add targets and actions
[myButton addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];
// add to a view
[myview addSubview:myButton];
4

5 に答える 5

2

答えは質問自体にあります

// add targets and actions
[myButton addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];

この行は、コントロールイベントの アクション名を持つボタンにアクションを追加しましたselfbuttonClicked:touchUpInside

したがって、ボタンが touchupInside の場合、メソッド buttonClicked が実行されます

したがって

- (void)buttonClicked: (UIButton *)sender
{
 // do whatever you want to do here on button click event
}

ボタンアクションで実行されます

于 2013-06-10T08:38:05.093 に答える
1
- (void)buttonClicked:(id)sender
{
   // your code
}
于 2013-06-10T08:13:34.900 に答える
0

UIControlのドキュメントを見てください

- (void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents  

アクション : A selector identifying an action message. It cannot be NULL.

あなたは行動として合格@selector(buttonClicked:)しています。@selector()は、括弧内のものをすべて に変換するコンパイラ ディレクティブSELです。ASELはメソッド名を示す型ですが、メソッドの実装ではありません。[1]-(void)buttonClicked:(id)senderあなたのクラスに実装してください。

于 2013-06-10T08:22:21.633 に答える
0
- (void)buttonClicked: (UIButton *)sender
{
 // do stuff
}
于 2013-06-10T08:14:19.510 に答える
0
- (void)buttonClicked: (UIButton *)sender
{
 // do whatever you want to do here on button click event
}
于 2013-06-10T16:50:29.540 に答える