![](/img/trans.png)
[英]fatal error: NSArray element failed to match the Swift Array Element type
[英]Fatal error NSArray element failed to match the Swift Array Element type after xcode10.1 update
因为我更新了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.
错误消息告诉您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实例。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.