私は独自のカスタムUIViewController
トランジションを実装しており、TO ビュー コントローラーのフレームをデバッガーに出力すると、{{0, 0}, {0, 0}}
最初と最後のフレームの両方を受け取ります。コンテキストのメソッドは、最終的な遷移後の予想フレームと、遷移前の初期フレームを表示するはずだと思いました。
これはどのように機能するはずですか?
-(void)startInteractiveTransition:(id<UIViewControllerContextTransitioning>)transitionContext{
UIViewController *fromVC = [transitionContext viewControllerForKey:UITransitionContextFromViewControllerKey];
UIViewController *toVC = [transitionContext viewControllerForKey:UITransitionContextToViewControllerKey];
CGRect initialToFrame = [transitionContext initialFrameForViewController:toVC];
CGRect finalToFrame = [transitionContext finalFrameForViewController:toVC];
NSLog(@"initialToFrame: %@, finalToFrame: %@", NSStringFromCGRect(initialToFrame), NSStringFromCGRect(finalToFrame));
}
デバッガーは以下を表示しています:
initialToFrame: {{0, 0}, {0, 0}}, finalToFrame: {{0, 0}, {0, 0}}
さらに、デバッガーには次の警告も表示されます。これはとにかくエラーに寄与しますか?
Presenting view controllers on detached view controllers is discouraged