gpt4 book ai didi

ios - EXC_BAD_ACCESS on nil 检查 Swift 中的可选

转载 作者:行者123 更新时间:2023-11-28 06:53:33 24 4
gpt4 key购买 nike

编辑 2:更改一些完全不相关的代码后,崩溃再次发生。即使我尝试恢复代码更改,它也会再次崩溃。

编辑:更新到 iOS 9.2(从 9.1)后,它再次正常工作。

以下代码在 nil 检查时给出了 EXC_BAD_ACCESS:

if(self.imageViews != nil){
for (_,element) in self.imageViews!.enumerate(){
element.removeFromSuperview()
}
}

属性定义如下:

class ImageAdditionalContent : AdditionalContentView {
var imageViews : [UIImageView]?

即使我尝试首先为其分配一个空数组,它也会在分配时给我一个 EXC_BAD_ACCESS:

self.imageViews = []

更有趣的是,它在一天前运行良好。如果我删除整个代码,运行应用程序,退出它,再次添加代码并再次运行它,它会第一次在 for 循环上崩溃,然后在 nil 检查时再次崩溃。

最佳答案

我会在这里利用可选项。至于您的 EXC_BAD_ACCESS,我不仅会检查 UIImageView 数组的状态,还会检查自己的状态。在赋值之前设置一个断点,看看发生了什么。如果这在一天前工作正常,我还会查看您的项目中发生了哪些代码更改。

    if let elements = self.imageViews {
for element in elements {
element.removeFromSuperview()
}
} else {
print("self.imageViews is nil! \(self.imageViews)")
}

关于ios - EXC_BAD_ACCESS on nil 检查 Swift 中的可选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34290433/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com