UIView
またはUIViewController
のtouchesBegan:withEvent:
への最初の呼び出しが、画面の左端をタッチすると遅延する問題が発生しています。これはiOS 10の新たな問題であり、3D Touch(iPhone 6以降)搭載のデバイスでのみ発生します。実際、一般 - >アクセシビリティで3D Touchを無効にすると、問題はなくなります。`touchesBegan:withEvent:`は画面の左端で遅れます
ただし、UIGestureRecognizers
を使用すると問題は発生しません。現在のところ、私の回避策はサブクラスを作成してtouches*
メソッドをオーバーライドし、それらを古い実装に転送することです。
これは単なるバグですか、遅延を解消する方法はありますか?
それは私はいくつかのより多くの調査でしたし、これが今の最善の解決策のように思える – Jayson
ラインの下のより多くの問題を引き起こしますよう、私はそれがすぐに問題を解決しますが、システムのジェスチャー認識装置をいじりする方法を参照フムようです。 これらのジェスチャーレコグナイザは '_UISystemGestureGateGestGestureRecognizer'のインスタンスであり、主にコントロールセンターや3Dタッチアプリの切り替えなどのシステムジェスチャでアプリがよりうまくやり取りされるようにするために使用されているようです。左端には、ユーザーがアプリを切り替えようとしたときの誤ったアプリのやりとりを防ぐために遅延が追加されていると思われますが、私の場合は左端で反応する必要があります。ユーザーがアプリを切り替えようとしたとき。 – Jayson