私はのコンテナとして機能するUIScrollView
を使用しているので、UITapGestureRecognizer
を使用しています。基本的に私は引数を持つアクションメソッドを使用しようとしています。アクションメソッドにmyLabel.tag
の値を送って、UILabelが持つものがタップによってトリガーされたことに応じて、どのようなアクションをとるべきかを知ることができます。UITapGestureRecognizer initWithTarget:action:引数を取るメソッド?
これを実行する1つの方法は、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
}
はそうではありませんセレクターのセミコラムを忘れてしまった? – alecnash