\EDIT: これでデリゲートは、gestureRecognizer で引数を取得します。
次のようなプロトコルを実装できます。
@protocol ViewControllerWithGestureRecognizerDelegate
- (void)viewControllerGestureRecognizerEvent:(UIPinchGestureRecognizer *)gestureRecognizer;
@end
そして、Gesture Recognizer が表示される View Controller にデリゲート プロパティを追加します。
@property (nonatomic, weak) id<ViewControllerWithGestureRecognizerDelegate> delegate;
次に、Gesture Recognizer を View Controller に追加します。
UIPinchGestureRecognizer *gestureRecognizer = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(gestureRecognizerAction:)];
[self addGestureRecognizer:gestureRecognizer];
ジェスチャ レコグナイザーのアクション メソッドでデリゲート メソッドを呼び出します。
- (void)gestureRecognizerAction:(UIPichGestureRecognizer *)gestureRecognizer
{
[self.delegate viewControllerGestureRecognizerEvent:gestureRecognizer];
}
プロトコル ViewControllerWithGestureRecognizerDelegate を 2 番目のビュー コントローラー (ジェスチャ認識イベントに関する通知を受け取りたい) に実装し、ジェスチャ認識エンジンが 2 番目のビュー コントローラーになるビュー コントローラーのデリゲートを設定します。
ViewControllerWithGestureRecognizer.delegate = ViewControllerInWhichYouWantToGetNotifiedAboutGestureRecognizerEvents.
このようにして、ジェスチャ レコグナイザーが 1 つのビュー コントローラーでメソッドを呼び出すたびに、2 番目のビュー コントローラーにそれが通知されます。