ここで取得するデフォルトのトランジションの代わりとして機能するカスタムトランジションを作成しようとしています。たとえば、次のようになります。
[self.navigationController pushViewController:someController animated:YES];
プレーンにマッピングされた静的テクスチャにエフェクトを実行する OpenGL ベースのビューを用意しました (コア アニメーションのフリップ エフェクトのコピーとしましょう)。私が行う方法がわからないことは次のとおりです。
- 現在のビュー コンテンツを取得し、そこからテクスチャを作成します (それを行う関数を見たのを覚えていますが、見つかりません)。
- 現在画面外にあり、現在のビューを置き換えるビューに対して同じことを行う方法
- トランジション クラスを可能な限りネイティブにする (コア アニメーション効果の一種にする) ためにフックできる API はありますか?
どんな考えやリンクも大歓迎です!
アップデート
Jeffrey Forbes の回答は、ビューのコンテンツをキャプチャするソリューションとしてうまく機能します。
私がまだ理解していないのは、移行先のビューのコンテンツをキャプチャする方法です。これは、移行が完了するまで非表示にする必要があります。
また、OpenGL ビューを表示するにはどの方法を使用すればよいですか? デモンストレーションのために、pushViewController を使用しました。ただし、これはナビゲーションバーに影響します。実際には、アニメーションを使用して 1 つ前の項目に戻りたいと考えています。説明については、このビデオを確認してください。
もう 1 つのオプションは、presentViewController を使用することですが、それはフルスクリーンを表示します。別のウィンドウ (またはビュー?) を作成すると便利だと思いますか?