のコンテナとして機能するUITapGestureRecognizer
を使用しているため、使用しています。基本的に私はアクションメソッドを引数で使用しようとしているので、たとえばアクションメソッドに値を送信して、タップによってUILabelがトリガーされたものに応じてどのアクションを実行するかを知ることができます。UIScrollView
UILabel
myLabel.tag
それを行う 1 つの方法は、s と同じ数のアクション メソッドを持つことですが、これUILabel
はコード的にはあまり「きれい」ではありません。私が達成したいのは、switch ステートメントを使用したアクション メソッドを 1 つだけ持つことです。
これは可能ですか、それとも次のようにする必要がありますか (ため息):
UITapGestureRecognizer *myLabel1Tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(myLabel1Tap)];
[myLabel1Tap addGestureRecognizer:myLabel1Tap];
UITapGestureRecognizer *myLabel2Tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(myLabel2Tap)];
[myLabel1Tap addGestureRecognizer:myLabel2Tap];
UITapGestureRecognizer *myLabelNTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(myLabelNTap)];
[myLabel1Tap addGestureRecognizer:myLabelNTap];
- (void)myLabel1Tap {
// Perform action
}
- (void)myLabel2Tap {
// Perform action
}
- (void)myLabelNTap {
// Perform action
}