アプリに基本的な3Dタッチ機能を追加し始めたばかりですが、最初に追加する試みがうまくいきました。iOS 3Dタッチピークが終了した(ポップなし)場合の検出
しかし、私は、ピークが終わったことを検出してポップに入っていないことを検出する方法があるかどうか疑問に思っていました。
UIViewControllerPreviewingDelegateメソッドは、ピークまたはポップが要求されていることを伝えるのに適していますが、ピークが終了してポップになっていないと伝える方法はありません。
Peeked ViewControllerには、現在のところ覗いていることを知る方法がありますが、これで十分だろうと思います。基本的に私は、ビューに入るときに普通にいくつかのものを作成するセグを持っています。ユーザーがポップすることなくちょうど終わるように選択すると、それを覗くと元に戻す必要があります。必要なクリーンアップを実行できるようにこのケースを検出する良い方法を参照してください。
乾杯
私は同じ問題があります。 AppleがUIViewControllerPreviewingDelegateに別の機能を追加したいと考えています。 – HMHero
しばらくの間、vcが覗き見ているかどうかを示すフラグを設定し、previewingContext(previewingContext:UIViewControllerPreviewing、viewControllerForLocationの場所:CGPoint)に設定し、previewingContext(previewingContext:previewViewContext:false)にリセットすることができます。UIViewControllerPreviewing、commitViewController viewControllerToCommit:UIViewController )。 – HMHero
おかげさまで私も同様の考えを持ち、覗き見の上で受けられるのが良いと思ったすべての覗き見のアクションのための議定書を作った。残念ながらプレビューされたビューは消える前にビューがポップされているので、まだ消えているピークとピークのピークを区別できません – jimbobuk