いくつかのスクロールビューに画像ボタンを動的に追加しています。それらはすべて 1 つの longPressHandler を指しています。では、どのボタンが押されたかを取得するにはどうすればよいでしょうか。[送信者タグ] は、ボタンに追加した longGestureRecognizer のタグを提供し、そのタグを手動で設定することはできません。
for (...) {
UIButton *button = [[UIButton alloc] init];
button.tag = w + h * 3;
[button addTarget:self action:@selector(imageButtonPressed:) forControlEvents:UIControlEventTouchUpInside];
UILongPressGestureRecognizer *gest = [[UILongPressGestureRecognizer alloc]
initWithTarget:self action:@selector(imageButtonLongPress:)];
gest.minimumPressDuration = 1;
gest.delegate = self;
[button addGestureRecognizer:gest];
[gest release];
[scrollView addSubview:button];
[button release];
}
- (void) imageButtonLongPress:(id)sender {
// how to get button tag here?
}