错误:"致命错误:在展开可选值时意外发现nil"在同一视图控制器上的两个视图之间转换期间
当我调用Flip1
函数时,它会给我上面的错误。
以下代码:
@IBAction func Flip(_ sender: AnyObject){
UIView.transition(from: Back, to: Front, duration: 0.5, options: UIViewAnimationOptions.transitionFlipFromLeft, completion: nil)
}
@IBAction func Flip1(_ sender: AnyObject){
UIView.transition(from: Front, to: Back, duration: 1, options: UIViewAnimationOptions.transitionFlipFromRight, completion: nil)
}
答案 0 :(得分:2)
是的,我终于找到了错误。
只需将插座作为强力参考,或者如下所示:
@IBOutlet var Front: UIView!
@IBOutlet var Back: UIView!
已经完成了!
答案 1 :(得分:1)
以下是您的问题的答案:transitionFromView:toView:duration:options:completion:
参数(根据文件):
fromView
转换的起始视图。默认情况下,此视图作为转换的一部分从其超级视图中删除。toView
转换的结束视图。默认情况下,此视图作为转换的一部分添加到fromView的superview 。
解决您的问题:
如果您想在内存中同时查看两个视图,请使用transitionWithView:duration:options:animations:completion:代替transitionFromView:toView:duration:options:completion:。
试试这个:
添加包含“Front”和“Back”视图的UIView。 (将新视图添加为“前”和“后”视图的超级视图)
在“超级视图”上执行翻转动画,同时在“前”和“后”视图上隐藏和取消隐藏操作。使用transitionWithView:duration:options:animations:completion:动画块
示例代码:
{{1}}