过渡 0.1.7

Transition 0.1.7

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2017年6月
SwiftSwift版本3.0
支持SPM支持SPM

Pablo Alejandro Pérez Martínez维护。



  • Pablo A. Pérez-Martínez(Pau)编写

Transition

Transition库提供了一个简单的实现,通过仅通过继承您的视图控制器来执行过渡动画,这些动画可以是交互式的。

使用

首先,您需要通过添加import Transitions来导入您要继承的视图控制器中的库。

然后,使用正确的视图控制器对象进行继承

  • TransitionViewController
  • TransitionNavigationController
  • TransitionTabBarController

当初始化您的子类时,初始化其transitionConfiguration属性

let properties = TransitionProperties(duration: 0.5, modalPresentationStyle: .overFullScreen)
let configuration = TransitionConfiguration.noninteractive(transitionProperties: properties)
self.transitionConfiguration = configuration

最后,使用您子类中的公共方法,通过仅定义一个包含动画的块,以便以自定义动画呈现或隐藏新的视图控制器

let vc = UIViewcontroller()
let presentBlock = { (transitionContext: UIViewControllerContextTransitioning, duration: TimeInterval) in
    let toViewController = transitionContext.viewController(forKey: UITransitionContextViewControllerKey.to)!
    let containerView = transitionContext.containerView
    toViewController.view.alpha = 0.0
    containerView.addSubview(toViewController.view)
    UIView.animate(withDuration: duration, animations: {
        toViewController.view.alpha = 1.0
    }, completion: { finished in
        transitionContext.completeTransition(!transitionContext.transitionWasCancelled)
    })
}
self.present(vc, presentBlock: presentBlock)

文件

控制器

  • TransitionViewController -> UIViewController子类,允许通过使用实例方法呈现/消失交互式过渡。
  • TransitionNavigationController ->UINavigationController子类,允许通过使用实例方法推送/弹出交互式过渡。
  • TransitionTabBarController -> UITabBarController子类,允许通过使用实例方法选择交互式过渡。

  • Transition -> 协议和对象声明。
  • GenericTransition -> 实现Transition协议的主要管理器。