Swift:无法使用“(AnyObject?!)”类型的参数列表调用 'addObject'
Swift: cannot invoke 'addObject' with an argument list of type '(AnyObject?!)'
我创建了一个数组,空 atm:var textArray: NSMutableArray! = NSMutableArray()
我正在尝试用本教程中的数据填充此数组:https://youtu.be/0qE8olxB3Kk 但我的数据不像他那样是简单的字符串,它们是从 JSON(字典数组)中获取的) 并且属于 AnyObject?!
类型 如果需要,我可以用我的做法更新这个主题,但如果它们没用,我不会用过多的代码重载这个 post。
当我像这样填充数组时:self.textArray.addObject(summary)
我收到错误消息 cannot invoke 'addObject' with an argument list of type '(AnyObject?!)'
其中 summary
是我的 JSON 词典之一,类型为 AnyObject?!
。
我知道数组应该由 AnyObject
类型的数据填充..
有没有办法将 AnyObject?!
转换为 AnyObject
?我还没有看到像 ...?!
这样的类型,所以也许问题就在那里,我不知道...
感谢您的帮助,我可以用我如何从通过 HTTP Post 请求获得的 JSON 或任何其他信息中提取字典来更新此主题。
此致,
fselva
你必须双重展开AnyObject?!
变量:
let obj = "Alice" as AnyObject?!
var arr = [AnyObject]()
arr.append(obj!!)
您需要将可选的展开两次。
var textArray: NSMutableArray! = NSMutableArray()
var a:AnyObject?! = "hello"
你可以用强制展开来做到这一点:
textArray.addObject(a!!)
但这是不安全的,如果任一个选项是 nil
就会崩溃。安全地做到这一点的方法是使用可选绑定:
if let temp1 = a, temp2 = temp1 {
textArray.addObject(temp2)
}
我创建了一个数组,空 atm:var textArray: NSMutableArray! = NSMutableArray()
我正在尝试用本教程中的数据填充此数组:https://youtu.be/0qE8olxB3Kk 但我的数据不像他那样是简单的字符串,它们是从 JSON(字典数组)中获取的) 并且属于 AnyObject?!
类型 如果需要,我可以用我的做法更新这个主题,但如果它们没用,我不会用过多的代码重载这个 post。
当我像这样填充数组时:self.textArray.addObject(summary)
我收到错误消息 cannot invoke 'addObject' with an argument list of type '(AnyObject?!)'
其中 summary
是我的 JSON 词典之一,类型为 AnyObject?!
。
我知道数组应该由 AnyObject
类型的数据填充..
有没有办法将 AnyObject?!
转换为 AnyObject
?我还没有看到像 ...?!
这样的类型,所以也许问题就在那里,我不知道...
感谢您的帮助,我可以用我如何从通过 HTTP Post 请求获得的 JSON 或任何其他信息中提取字典来更新此主题。
此致,
fselva
你必须双重展开AnyObject?!
变量:
let obj = "Alice" as AnyObject?!
var arr = [AnyObject]()
arr.append(obj!!)
您需要将可选的展开两次。
var textArray: NSMutableArray! = NSMutableArray()
var a:AnyObject?! = "hello"
你可以用强制展开来做到这一点:
textArray.addObject(a!!)
但这是不安全的,如果任一个选项是 nil
就会崩溃。安全地做到这一点的方法是使用可选绑定:
if let temp1 = a, temp2 = temp1 {
textArray.addObject(temp2)
}