2

iOS 5 で、子ビュー コントローラーaddChildViewControllerを追加し、そのビューを (0, 100) に追加して、下の画面全体を覆うと、この新しい子ビュー コントローラーpresentViewControllerで、反転アニメーションを使用して別のビュー コントローラーを提示します。 、子ビューだけ反転して新しいビューが表示されると思っていたのですが、ビュー全体(ステータスバーを除く画面全体)が反転していることがわかりますか?

彼らは「自己完結型」で機能すると思いましたか?つまり、子ビュー コントローラーが別のビュー コントローラーを提示する場合、ルート ビューではなく、子ビュー コントローラーのビューが置き換えられますか?

(したがって、表示されたビュー コントローラーのビューの背景が黄色の場合、(0,100) で始まり下部画面を覆う子ビュー コントローラーのビューだけではなく、ステータス バーを除く画面全体が黄色になります)

4

2 に答える 2

6

設定しchildViewController.definesPresentationContext = YESます。

于 2012-09-22T22:24:02.500 に答える
1

子ビュー コントローラーのみを反転させたい場合は、コントローラーのビューをルート ビュー コントローラーのビュー階層に追加する必要があります (2 倍の速さです!)。次に、UIViewアニメーションを使用してそれらをアニメーション化します。

[UIView transitionFromView:controllerB.view
                    toView:controllerC.view
                  duration:0.33
                   options:UIViewAnimationOptionCurveEaseInOut | UIViewAnimationOptionTransitionFlipFromLeft
                completion:^(BOOL finished) {
                    // whatever completion code you need
                }];
于 2012-09-22T21:20:52.760 に答える