我正在尝试自定义过渡动画.我创建了一个符合以下条件的动画对象UIViewControllerAnimatedTransitioning:
import UIKit
class ViewControllerAnimator: NSObject, UIViewControllerAnimatedTransitioning {
let duration = 1.0
func transitionDuration(transitionContext: UIViewControllerContextTransitioning?) -> NSTimeInterval {
return duration
}
func animateTransition(transitionContext: UIViewControllerContextTransitioning) {
let fromView = transitionContext.viewForKey(UITransitionContextFromViewKey)!
//Animate out
UIView.animateWithDuration(duration, animations: { () -> Void in
fromView.frame.origin.x -= 200
}) { (Bool) -> Void in
transitionContext.completeTransition(true)
}
}
}
Run Code Online (Sandbox Code Playgroud)
我试图设置框架时出错fromView.它试图强行解开零时崩溃.我在这做错了什么?为什么我的fromView没有?
Kex*_*Kex 20
如果其他人遇到此问题,请找到答案.我有myViewController.modalPresentationStyle = .Custom.出于某种原因,这似乎是一个错误,并导致它崩溃.设置时,也无法从容器视图中正确删除fromView控制器transitionContext.completeTransition(true).只需删除自定义演示文稿样式行即可.
小智 9
这是预期的行为:
如果-shouldRemovePresentersView返回NO,则在演示期间与UITransitionContextFromViewKey关联的视图为nil。这是为了暗示您的动画师不应操纵呈现视图控制器的视图。对于解雇,将返回-presentedView。
| 归档时间: |
|
| 查看次数: |
2579 次 |
| 最近记录: |