自定义塞格与CATransition
问题描述:
我写了下面的代码,从一个到另一个视图控制器从右到左的过渡。 但新的视图控制器只是出现没有动画。自定义塞格与CATransition
override func perform() {
var sourceViewController = self.sourceViewController as! UIViewController
var destinationViewController = self.destinationViewController as! UIViewController
var transition: CATransition = CATransition()
transition.duration = 1.25
transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
transition.type = kCATransitionPush
transition.subtype = kCATransitionFromRight
destinationViewController.view.layer.addAnimation(transition, forKey: "kCATransition")
sourceViewController.presentViewController(destinationViewController, animated: false, completion: nil)
}
我只是找不到任何错误。任何人都可以找到?我错过了一些简单的东西吗
预先感谢您
答
改变这样的代码:
destinationViewController.view.layer.addAnimation(transition, forKey: "kCATransition")
到新的一个:
destinationViewController.view.window!.layer.addAnimation(transition, forKey: "kCATransition")