首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使UIModalTransitionStyle看起来像快速推进

使UIModalTransitionStyle看起来像快速推进
EN

Stack Overflow用户
提问于 2015-07-08 08:15:57
回答 1查看 2K关注 0票数 4

我想知道是否有任何方法使一个UIModalTransitionStyle有一个“推”风格?

因为我有这样的事情:

代码语言:javascript
复制
let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
let secondViewController = storyBoard.instantiateViewControllerWithIdentifier("SecondViewController") as! SecondViewController
secondViewController.modalTransitionStyle = UIModalTransitionStyle.FlipHorizontal


self.presentViewController(secondViewController, animated:true, completion:nil)

但是,当我移动到另一个视图控制器时,我希望有一个简单的“推送”效果。

打招呼!

编辑(感谢LoGoCSE)但仍未解决问题

现在我有了

代码语言:javascript
复制
let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
let secondViewController = storyBoard.instantiateViewControllerWithIdentifier("SecondViewController") as! SecondViewController
secondViewController.modalTransitionStyle = UIModalTransitionStyle.FlipHorizontal

let transition: CATransition = CATransition()
transition.duration = 0.25
transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)


transition.type = kCATransitionPush
transition.subtype = kCATransitionFromRight

self.view.layer.addAnimation(transition, forKey: kCATransition)

self.presentViewController(secondViewController, animated:false, completion:nil)

但是,重点是添加视图([self.view addSubview:destinationController.view];)不起作用。所以我和往常一样尝试了presentModalView (没有动画),但是转换是在同一个视图上完成的,然后出现了第二个视图。

EN

回答 1

Stack Overflow用户

发布于 2015-07-08 09:29:28

Objective中的-This代码- .You只需将其转换为Swift

代码语言:javascript
复制
UIViewController *sourceViewController = self ;
UIViewController *destinationController = objdestinationViewController;

CATransition* transition = [CATransition animation];
transition.duration = .25;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionPush; //kCATransitionMoveIn; //,kCATransitionPush, kCATransitionReveal, kCATransitionFade
transition.subtype = kCATransitionFromRight; //kCATransitionFromLeft,kCATransitionFromRight, kCATransitionFromTop, kCATransitionFromBottom

[self.view.layer addAnimation:transition forKey:kCATransition];

[self.view addSubview:destinationController.view];

希望能奏效:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31287059

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档