スワイプがサブビューの上にあるときに登録されていないように見えるUIViewにスワイプジェスチャーが添付されています。スーパービューのUIGestureRecognizersにサブビューが自動的にリスナーとして追加されますか?
0
A
答えて
0
Aがスワイプを受け取るルートUIViewであり、Bがスワイプを本当に受信したくないAのサブビューであるとします。
- あなたはB上の任意のジェスチャーを受信したくない場合は、あなたがそれ
- 上userInteractionEnabled =偽できますが、まだいくつかのB上のジェスチャー(ただしスワイプ)を受信したい場合は
あなたはまた、あなたはジェスチャーを実装から機能の広い範囲を得ることができますどのように見ることができます
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
if ([gestureRecognizer isKindOfClass:UISwipeGestureRecognizer]) {
return NO;
}
return YES;
}
Bでこのメソッドを実装できるように、Bのサブクラスを作成し、このメソッドを実装する必要があります認識:shouldReceiveTouch:
私はそれが助けて欲しい!
0
解決策の一つは、チェックすることですジェスチャー点は便利なCの関数がある 、あなたのサブビューの内側かではありません:
あなたはこのように使用することができます/* Return true if `point' is contained in `rect', false otherwise. */
bool CGRectContainsPoint(CGRect rect, CGPoint point)
:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
return CGRectContainsPoint(subview.frame, [touch locationInView:self.view]);;
}
0
他のソリューションは機能するはずですが、サブビューに独自のイベントハンドラがない場合は、subview.userInteractionEnabled = false
をサブビューに設定するほうが簡単です。
関連する問題
- 1. いつサブビューがストーリーボードからスーパービューに追加されますか?
- 2. ビューを新しいスーパービューに移動すると、古いスーパービューから自動的に解放されますか?
- 3. スーパービューの境界線がサブビューに分割されています
- 4. dbcp jarが自動的にプロジェクトに追加されました
- 5. 火災データベースの追加フィールドが自動的に追加されますか?
- 6. すべてのデバイスがチームプロビジョニングプロファイルに自動的に追加されますか?
- 7. HasDatepickerクラスが自動的に追加されました
- 8. サブビューはスーパービューに比例してサイズ変更されません
- 9. がサブビューはスーパービュー
- 10. コンテンツがdivに追加されると自動的にスクロールできますか?
- 11. UICollectionViewCellのサブビューとしてのUIScrollView - スーパービューにタップを渡します
- 12. Eclipse Neon 2.0自動的にコメントが追加されます
- 13. GPUカードを追加すると自動的にテンソルフローがスケールされますか?
- 14. StatusBarは自動的にsetNeedsLayoutに追加されました
- 15. 手書きで追加されたサブビューを介してストーリーボードでサブビューが追加されましたか?
- 16. iOS:親ビューにサブビューが追加されていませんか?
- 17. のjQuery Mobileは自動的に追加されます&NBSP
- 18. コンポーネントをフォームに追加すると、Delphiユニットは自動的にどのように追加されますか?
- 19. uimageviewのタッチイベントがサブビューとして親ビューに追加されました
- 20. iOSのすべてのオブジェクトは自動リリースプールに自動的に追加されますか?
- 21. シングルタップジェスチャーがスーパービューに追加されたときにUIButtonが機能しない
- 22. Firefoxにスタイルシートが動的に追加されましたか?
- 23. 入力に自動的に引用符が追加されました
- 24. UIStackViewにサブビューの無応答UIButtonが追加されました
- 25. 空白のオプションが選択ボックスに自動的に追加されます
- 26. asp.net-mvc:ビューにpasswordForを追加すると、自分のフィールドに自動的に値が設定されます。
- 27. ウィンドウのサブビューの1つが削除されたとき、ビューサイズは自動的にウィンドウサイズに設定されます
- 28. nibからフレームにロードされたサブビューを追加します
- 29. C#autostartが自動的にスタートアップフォルダにアプリケーションを追加します。
- 30. iPhone/iOS搭載の自動化とUIGestureRecognizers