現在、提供されている API を使用して、カスタム コントローラー トランジションを定義しています。Apple から提供されたドキュメントを読み、WWDC のビデオを見て、それについて話しているブログをたくさん見つけました。これらの API の使用方法についていくつか質問があります。
- 上のコンテナー ビュー
animateTransition:
: 私が見つけたサンプル コードの大部分と、"ビュー コントローラーを使用したカスタム トランジション" という名前の WWDC 218 では、"toViewController" のビューのみがcontainerView
. しかし、他のいくつかの例とビデオ「Architecting Modern iOS Apps」では、示されたコードは「toViewController」と「fromViewController」の両方をcontainerView
. 両方を処理する必要がある場合と、1 つだけを処理する必要がある場合はいつですか? 却下と提示の両方で同じですか? - およびコンテキスト
initialFrameForViewController:
から: WWDC 218 ビデオfinalFrameForViewController:
はUIViewControllerContextTransitioning
、コントローラーのビューのフレームを取得するためにこれらのメソッドに依存することが非常に重要であることを教えてくれました。しかし、多くの例では、 はまったく使用されていません。カスタムアニメーションで使用しようとしましたが、提供されたフレームが画面の外にある可能性があります。これらの方法でフレームはどのように決定されますか? これらのメソッドはいつ使用する必要がありますか? ドキュメントに指定されていますか? viewForKey:
iOS8 : iOS 8 以降ではなく、このメソッドを使用する必要がありviewControllerForKey:
ますか?modalPresentationStyle
カスタム アニメーション トランジション中にビュー階層にインシデントがありますか? ここで提供されるスライド: http://es.slideshare.net/Split82/custom-uiviewcontroller-transitionsでは、これは最初と最後のフレームに発生するようです。それはどこかに文書化されていますか?