使用UIView.transitionFromView后,“fromView”会发生什么?你怎么回来的? (重新初始化它?).
原文链接:https://www.f2er.com/swift/319234.html这是我制作的一个简单示例,当我尝试返回“fromView”或引用其上的标签等时,“致命错误:在展开可选值时意外发现nil”.
假设我已经在我的故事板中设置了这些视图 – 我在根目录中添加了一个名为“cardView”的子视图,然后在cardView下添加了一个名为“backView”和“frontView”的视图
将它们链接到视图控制器并将“翻转”按钮链接到看起来像这样的动作(以及变量):
@IBOutlet weak var backView: UIView! @IBOutlet weak var frontView: UIView! @IBOutlet var cardView: UIView! var front = true @IBAction func flipIt(sender: AnyObject) { if front { UIView.transitionFromView(self.frontView,toView: self.backView,duration: 1,options: UIViewAnimationOptions.TransitionFlipFromRight,completion: nil) } else { UIView.transitionFromView(self.backView,toView: self.frontView,options: UIViewAnimationOptions.TransitionFlipFromLeft,completion: nil) } front = !front }
因此,当我运行它时 – 第一次点击“翻转”按钮就可以了,它翻转到后视图,但是当我再次点击它时,我得到“致命错误:在第二次打开一个可选值时意外发现nil” transitionFromView行(“else”下的行).
显然,我不理解transitionFromView的一些影响.我尝试过很多不同的东西,包括一个使用这个转换的教程,并且能够让它工作但它不使用故事板,所以我不知道如何应用它对我的故事板视图的影响,显然……
谢谢你的帮助.