Swift无法从上到下呈现视图控制器

Mah*_*rla 2 catransition ios swift swift3

在我的应用程序中,我必须从上到下呈现屏幕,我尝试了下面的代码,它给出了相同的正常呈现风格.

        let screen = self.storyboard?.instantiateViewController(withIdentifier: "Screen1p5") as? Screen1p5
        let transition = CATransition()
        transition.duration = 0.5
        transition.type = kCATransitionPush
        transition.subtype = kCATransitionFromTop
        view.window!.layer.add(transition, forKey: kCATransition)
        self.present(screen!, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)

Nir*_*v D 14

对于您需要设置subtypeCATransition,以kCATransitionFromBottom和连击设置动画animatedfalsepresent(_:animated:completion:).

let screen = self.storyboard?.instantiateViewController(withIdentifier: "Screen1p5") as? Screen1p5
let transition = CATransition()
transition.duration = 0.5
transition.type = kCATransitionPush
transition.subtype = kCATransitionFromBottom
view.window!.layer.add(transition, forKey: kCATransition)
self.present(screen!, animated: false, completion: nil)
Run Code Online (Sandbox Code Playgroud)

因解除设定subtypeCATransitionkCATransitionFromTop.

let transition = CATransition()
transition.duration = 0.5
transition.type = kCATransitionPush
transition.subtype = kCATransitionFromTop
view.window!.layer.add(transition, forKey: kCATransition)
self.dismiss(animated: false)
Run Code Online (Sandbox Code Playgroud)