我有一个自定义UIViewControllerTransitioningDelegate
,可以使用自定义动画和自定义视图框架在UIViewController
中进行动画制作。这个演示的效果是有一个像这样的视图控制器:
一切运作良好,主要使用UIViewControllerTransitioningDelegate
:
- (void)animateTransition:(id <UIViewControllerContextTransitioning>)transitionContext
出现的问题是当另一个视图控制器出现在这个新视图控制器的顶部时 - 有或没有自定义transitioningDelegate
。一个简单的[self presentViewController:controller animated:YES completion:nil];
然后解除该视图控制器将导致最初呈现的视图控制器丢失先前为其设置的帧。它现在将调整到屏幕的边界,如下所示:
不幸的是,我没有看到任何可以拦截的事件,以防止帧被撤消。有什么我想念的吗?