質問

いくつかのサブビューを持つ UIView サブクラスがあり、クラス内でこれらのイベントを処理したいと考えています。

  • タッチ開始:withイベント:
  • touchMoved:withEvent:
  • touchEnded:withEvent:

しかし、これらのイベントをサブビューで呼び出すことも必要です。どうすればそれを達成できますか?

(すでに hitTest を試しましたが、touchesBegan イベントを取得するだけで、メソッドではタッチは送信されません)

役に立ちましたか?

解決

私は、メインウィンドウで次のメソッドをオーバーライドすることでそれを解決するために管理している。

- (void)sendEvent:(UIEvent*)anEvent
それは

経由で、右のイベントである場合は、

私もチェック

if ([[[anEvent allTouches] anyObject] phase] == UITouchPhaseBegan)

私は、UITouchPhaseMovedUITouchPhaseEndedのために同じことを行う私のカスタムコードを実行し、その後[super sendEvent:anEvent];

を送信します
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top