LVAnimator
Swift4.0版本,使用iOS自定义转场动画创建的抽屉效果,不再使用VC隐藏背景的方式,节省内存空间。本Demo主要用于展示,将一些侧滑筛选浮窗、上拉分享浮窗等都用转场动画完成,并可以自定义转场动画。
示例效果
使用方式
1、初始化得到动画对象
let animator = LVAnimator()
这个对象相当于动画管理控制器,接收push和present的事件,可以根据fromVC和toVC来分配相应的转场动画
2、push转场简单使用
animator.setup { (fromVC, toVC, operation) -> Dictionary<String, Any>? in
//动画时长,自定义动画
return ["duration" : "1", "delegate" : YourPushAnimation()]
}
如果不需要自定义转场动画,则返回nil即可
3、viewWillAppear注册代理
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
animator.registerDelegate(vc: self)
}
4、需要特别处理present动画
//present的vc
let vc = LVMineVC()
//present转场比较特殊,需将跳转的vc代理指向当前动画对象
animator.registerDelegate(vc: vc)
present(vc, animated: true)
更新
2018.9.11 将元组改为Dictionary,setup方法支持OC混编