gpt4 book ai didi

ios - fatal error NSArray 元素在 xcode10.1 更新后无法匹配 Swift 数组元素类型

转载 作者:行者123 更新时间:2023-11-29 11:29:00 33 4
gpt4 key购买 nike

自从我更新了xcode 10.1,就出现了这个错误。

代码是:

class mainPageJobObj   {
var _id : String = ""
var avatar :String = ""
var name : String = ""
var serviceState = ""
}
items : [mainPageJobObj]!
items // i read it from server and its not empty
let oneItem = items[index] // Fatal error: NSArray element failed to match the Swift Array Element type -- This is what compiler is showing.

after debuging debuging more specefic

最佳答案

错误信息告诉你 items 是从一个 NSArray 桥接而来的(它不强制输入它的元素)但是当 Swift 试图检索一个元素时,它做到了找不到 mainPageJobObj 的实例,这就是您所说的数组包含的内容。

从调试屏幕截图中,您可以看到 items 数组实际上包含 NSMutableDictionary 的实例。

一个快速的解决方法是使用适当的items声明:

var items:[String:Any] = slider.mainPageObj.items!
let oneItem = items[index]
let name = oneItem["name"]

更好的解决方法是从一开始就使用 Swift 类型;如果来自服务器的数据以 JSON 格式返回,则使用 Codable 创建 Swift Struct 或 Class 实例。

关于ios - fatal error NSArray 元素在 xcode10.1 更新后无法匹配 Swift 数组元素类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55557243/

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