自定义 UIViewController 转场?

3

除了4个原生iOS转换方式之外,还有其他自定义的UIViewController转换方式:

typedef enum {
    UIModalTransitionStyleCoverVertical = 0,
    UIModalTransitionStyleFlipHorizontal,
    UIModalTransitionStyleCrossDissolve,
    UIModalTransitionStylePartialCurl,
} UIModalTransitionStyle;

任何建议?
1个回答

2
您也可以尝试使用CATransition,例如,下面的代码显示了一个转换效果,其中第二个视图将您当前的视图向右推出。(假设这段代码放置在您的主视图控制器中)。
UIView *appWindow = [self.view superview];

CATransition *animation = [CATransition animation];
[animation setDuration:0.3];
[animation setType:kCATransitionPush];
[animation setSubtype:kCATransitionFromLeft];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];

[appWindow addSubview:yourSecondViewController.view];
[self.view removeFromSuperview];

[[appWindow layer] addAnimation:animation forKey:@"showSecondViewController"];

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接