ios - 简单内存游戏: found nil error

标签 ios swift xcode8 swift3

我构建了一个简单的内存游戏,用户应该点击一张卡,直到所有卡都配对。然而,我的问题是,当用户点击两张卡时,游戏会在 2 秒后崩溃“展开时意外发现 nil”。

我已经仔细检查了所有图像并确保它们正确连接,但我仍然收到错误。我的代码如下:

@IBOutlet weak var frontImageView: UIImageView!
@IBOutlet weak var backImageView: UIImageView!

var card: Card?{
    didSet {
        guard let card = card else {return}
        frontImageView.image = card.image
    }
}

fileprivate(set) var shown: Bool = false

//Mark:- Card function properties

func showCard(_ show: Bool, animated: Bool){
    frontImageView.isHidden = false
    backImageView.isHidden = false //This is where i get the error.
    shown = show

    if animated {
        if show{
            UIView.transition(from: backImageView, to: frontImageView, duration: 0.3, options: .transitionFlipFromBottom, completion: { (finished: Bool) in
            })
        } else {
            UIView.transition(from: frontImageView, to: backImageView, duration: 0.3, options: .transitionFlipFromBottom, completion: { (finished: Bool) in
            })
        }
    } else {
        if show{
            bringSubview(toFront: frontImageView)
            backImageView.isHidden = true
        } else {
            bringSubview(toFront: backImageView)
            frontImageView.isHidden = true
        }
    }

最佳答案

您的至少一个网点为零。有很多原因,例如:您忘记将 socket 连接到 xib/storyboard 文件、您在 viewDidLoad 之前调用 showCard、您纯粹从代码创建 View ,而不是从 Storyboard 实例化/xib 文件。

就像 @dylanthelion 一样,建议您应该调试代码并查看代码堆栈。您还应该在此处粘贴更多代码。

在代码中保留启用的异常断点: https://www.youtube.com/watch?v=AvnqBjzEKuk

关于ios - 简单内存游戏: found nil error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42193621/

相关文章:

ios - XCode——我什么时候使用开发人员配置文件和分发配置文件进行签名?

ios - Nib/Xib 对象生命周期

swift - 为什么我在 AppDelegate 中导入 MessageUI 在 UITableViewController 中不可见?

ios - 我可以在 drawRect 方法之外绘制圆形、矩形、直线等形状吗

objective-c - 如何在一个 if 语句中使用多个项目?

swift - 如何从 HTTPURLResponse 保存 Cookie

swift - 为什么我的 PageViewController 的数据源不能正常工作?

ios - 重定向 URI 与注册的重定向 uri 不匹配 Instagram iOS

ios - 当我想在另一个 VC 中更改 VC 中的某些内容时,是否必须使用委托(delegate)? swift

swift - SwiftUI 中的动画无法正常工作