touchesEndedメソッドは呼び出されませんか?

私が使用するアプリケーションを開発しています

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
}

-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
}

-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
}

-(void)handleSingleTap:(UITapGestureRecognizer *)recognizer {
}

今、 handleSingleTap 関数と touchesEnded を呼び出している touch move の後、iPhone 3で問題が発生しませんでした。これは、画面の下のほんの一部にしか起こらず、タッチエンドを移動したときに呼び出されませんでした。私が長く動くと touchesEnded が呼び出されます。

しかし、このことは、IPhone4とIPadでは正しく機能しています。 touchsesMoved の後のIPhone4とIPadでは、 touchesEnded を呼び出しています。

0
@beryllium私はあなたがなぜこの可能性のある複製を言っているのか分かりません。
追加された 著者 Nik's,
追加された 著者 beryllium,

1 答え

You're not the only one who has encountered this problem. I found a similar thread on Apple Support forum list : https://discussions.apple.com/thread/1507669?start=0&tstart=0

このスレッドは2008年のiPhone 3と一致しているので、iPhone 3で動作しているiOSの修正されていないバグである可能性があります。

そうでない場合は、UIScrollViewを使用していることが原因である可能性があります(コントローラは、上記のタッチメソッドを実装しています)。デフォルトでは、以下のメソッドがあります。

delaysContentTouches

これはYESに設定されています。あなたはそれをnoに変更し、それがどのように動作するのかを伝えるべきでしょうか。

UIScrollViewを使用していない場合は、2つのビューを使用していて、「デッドエリア」を含む2番目のビューがコントローラに接続されていない可能性があります。

1
追加された