使用自定义动画关闭视图控制器? [英] Dismiss view controller with custom animation?

查看:33
本文介绍了使用自定义动画关闭视图控制器?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用这行代码关闭我的视图控制器 self.dismiss(animated: true, completion: nil),但我不喜欢当前的动画.相反,我想从左向右滑动.下面是我测试动画的尝试,但不起作用.

I am using this line of code to dismiss my view controller self.dismiss(animated: true, completion: nil), but I do not like the current animation. Instead I want to slide from left to right. Below is my attempt to test out an animation, but does not work.

UIView.animate(withDuration: 1.0, delay: 0.0, options: UIViewAnimationOptions.curveEaseIn, animations: {

        let transition = CATransition()
        transition.duration = 10
        transition.type = kCATransitionPush
        transition.subtype = kCATransitionFromLeft

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

        self.dismiss(animated: false, completion: nil)
        }, completion: nil)

推荐答案

let transition: CATransition = CATransition()
transition.duration = 0.5
transition.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
transition.type = CATransitionType.reveal
transition.subtype = CATransitionSubtype.fromRight
self.view.window!.layer.add(transition, forKey: nil)
self.dismiss(animated: false, completion: nil)

这篇关于使用自定义动画关闭视图控制器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆