美文网首页
Swift 自定义转场

Swift 自定义转场

作者: Lucifer_rcy | 来源:发表于2016-10-07 14:47 被阅读0次

    1.设置转场代理

    myView.transitioningDelegate = self

    2.设置转场动画样式

    my.modalPresentationStyle = .Custom

    3.弹出菜单

    presentCiewController(myView, animated: true, comletion: nil)

    extension 实现代理方法

    func animationControllerForPresentedController(presented:UIViewController, presentingController presenting: UIViewController, sourceController source: UIViewController) -> UIViewControllerAnimatedTransitioning? {

    return MyPresentationController(presentedViewController:  presented,presentingViewController: presenting) //自定义的presentationController类

    }

    自定义presentationController

    class MyPresentationController : UIPresentationController
    {

     override init(presentedViewController: UIViewController, presentingViewController: UIViewController) {

      super.init(presentedViewController: presentedViewController, presentingViewController: presentingController)

     }


    //用于布局转场动画弹出的视图

    override func containerViewWillLayoutSubviews(){

    // containerView 容器视图

    // presentedView() 拿到弹出的视图

    presentedView()?.frame = CGRect(x: 100, y: 45, width: 200, height: 200)

    }

    }

    相关文章

      网友评论

          本文标题:Swift 自定义转场

          本文链接:https://www.haomeiwen.com/subject/niuyyttx.html