present ViewController 默认从下往上,想要实现从上往下的效果可参考:
let transition = CATransition()
transition.duration = 0.5
transition.type = .moveIn
transition.subtype = .fromBottom
// default is linear
transition.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeOut)
view.window?.layer.add(transition, forKey: kCATransition)
let vc = CustomViewController()
vc.modalPresentationStyle = .fullScreen
present(vc, animated: false)
关闭时从下往下可参考:
let transition = CATransition()
transition.duration = 0.5
transition.type = .reveal
transition.subtype = .fromTop
transition.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeOut)
view.window?.layer.add(transition, forKey: kCATransition)
dismiss(animated: false)