ユーザーが画面をシングルタップしたときに、2つのクラス(スーパービューとフルスクリーンサブビュー)のアクションを呼び出したいと思います。ただし、UITapGestureRecognizerをサブビューに追加すると、スーパービューに追加されたものがオーバーライドされます。スーパービューに追加されたUITapGestureRecognizerをオーバーライドせずに、サブビューにUITapGestureRecognizerを追加することは可能ですか?もしそうなら、どうすればこれを行うことができますか?
ありがとう!
編集: メインのviewController "MyToolBerController"から、次のように別のviewControllerからサブビューを追加しています。
PhotoViewController *photoViewController = [[PhotoViewController alloc] initWithNibName:@"PhotoViewController" bundle:nil];
myPhotoView = photoViewController.view;
[self.view addSubview:myPhotoView];
MyToolBerControllerにGestureRecognizerを次のように追加します。
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTapFrom:)];
[singleTap setNumberOfTapsRequired:1];
singleTap.delegate = self;
[myPhotoView addGestureRecognizer:singleTap];
[singleTap release];
これはすべて正常に機能しますが、ビューがタップされたときにPhotoViewControllerクラスとMyToolBerControllerクラスのメソッドを呼び出す必要があります。photoViewControllerに別のUITapGestureRecognizerを追加すると、superViewに追加されたUITapGestureRecognizerが上書きされます。