解包viewForKey(UITransitionContextFromViewKey)时的Nil(Swift)

我正在尝试自定义过渡动画.我创建了一个符合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)

        }

    }

}

我在尝试设置fromView的框架时遇到错误.它试图强行解开零时崩溃.我在这做错了什么?为什么我的fromView没有?

如果其他人遇到此问题,请找到答案.我有myViewController.modalPresentationStyle = .Custom.出于某种原因,这似乎是一个错误,并导致它崩溃.当设置transitionContext.completeTransition(true)时,也不会从容器视图中正确删除fromView控制器.只需删除自定义演示文稿样式行即可.

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...