iOS 7 で導入された新しいカスタム ビュー コントローラー トランジションを UINavigationController と組み合わせて使用しています。実装しました
-navigationController:animationControllerForOperation:fromViewController:toViewController:
私UINavigationControllerDelegate
の では、プロトコルを実装しUIViewControllerAnimatedTransitioning
、カスタム トランジションが美しく機能します。
ただし、View Controller を押すと、ナビゲーション バーのシフト アニメーションが表示されないようにしたいと思います。興味深いことに、ポップ アニメーションは問題なく、ナビゲーション アイテムはシフトではなくアルファ フェードされています。しかし、プッシュ アニメーションはナビゲーション項目を右からシフトします。
新しいView Controllerを置き換えて配列に追加することで、部分的な解決策を見つけまし-pushViewController:animated:
た。これにより、正しいアルファ フェード アニメーションが実行されます - ビュー コントローラーが初めてスタックにプッシュされる場合を除きます。その後のポップ/プッシュは問題ありません。-setViewControllers:animated:
viewControllers
この効果を達成する方法はありますか?Calendar.app と Photos.app もこれを実装しているので、可能であるはずです (ただし、コレクション ビューを使用する場合の特定の動作である可能性があります)。