UINavigationController自定义模态转换,导航栏太小

时间:2014-12-16 22:50:27

标签: ios modalviewcontroller uiviewanimationtransition

我正在使用自定义转换以模态方式显示UIVavigationController内的UIViewController。我正在使用缩放过渡,从较小的帧开始,以UINavigationController全屏结束。

    toView.transform = CGAffineTransformMakeScale(kInitialScale, kInitialScale);
    [containerView addSubview:toView];

    [UIView animateWithDuration:duration animations: ^{
        toView.transform = CGAffineTransformMakeScale(1.0, 1.0);
    } completion: ^(BOOL finished) {
        [transitionContext completeTransition:![transitionContext transitionWasCancelled]];
    }];

我的问题是UINavigationController是使用导航栏创建的,该导航栏不考虑状态栏(小于它应该),并且只有在达到其全屏大小时才适应(从44到64px)。导航标题在动画结束时偏移。

任何想法如何避免标题的最终偏移并从头开始创建具有良好导航栏大小的导航控制器?

1 个答案:

答案 0 :(得分:2)

在转换之前将toView添加到containerView就可以了。