IBOutlet 为零

2024-03-06

我已经为视图创建了一个标准出口,该视图将根据上一屏幕上选择的按钮保存不同的信息。

@IBOutlet weak var labelView: UIView!

它显示它在故事板视图和代码本身中都是连接的,但是,每次我到达对 labelView 的任何引用时,例如:

if detail.description == "About"
{
   labelView.backgroundColor = UIColor.red
}

然后应用程序崩溃并显示:

fatal error: unexpectedly found nil while unwrapping an Optional value

我已经尝试了我能想到的或在互联网上读到的一切:

  • 删除并更换连接

  • 像一篇文章建议的那样删除了派生数据文件夹

  • 创建对 self.view 的引用以强制其加载

  • 将其移至viewDidAppear

  • 将其移至viewWillAppear

  • 将其移至viewDidLoad(这是目前所在的位置
    called)

我确信此时答案相当简单,而我只是完全错过了它。


要查看插座被设置为零的位置,请尝试以下操作:

@IBOutlet weak var labelView: UIView? {
    didSet {
        print("labelView: \(labelView)")
    }
}

加载视图时,您应该看到它设置为初始值。如果它被设置为nil,在上面打一个断点print你应该能够从回溯中看到它发生的地方。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IBOutlet 为零 的相关文章

随机推荐