【发布时间】:2012-10-03 21:58:09
【问题描述】:
我正在尝试使用自定义 segue 在两个视图控制器之间进行交叉融合,segue 正确启动并按预期执行动画 - 但是在横向模式下,目标视图控制器在动画期间出现在其纵向布局中.动画完成后,目标视图控制器“捕捉”到其横向布局。两个视图控制器都是使用自动布局设置的。
下面是我自定义 segue 的“执行”方法:
- (void)perform
{
UIViewController *srcController = self.sourceViewController;
UIViewController *dstController = self.destinationViewController;
dstController.view.transform = srcController.view.transform;
[UIView transitionFromView:srcController.view
toView:dstController.view
duration:self.animationDuration
options:self.animationOptions
completion:self.animationCompletionBlock];
}
是否需要在显示之前手动告诉目标视图控制器触发自动布局?如果是这样,这将如何执行?使用带有交叉溶解的内置转场似乎不会遇到这个问题,我尝试(没有成功)确定我的自定义转场不是在做什么。
这让我很困惑,如果需要任何帮助,请告诉我是否需要更多详细信息。
【问题讨论】:
标签: objective-c ios xcode autolayout