【发布时间】:2017-01-14 16:48:56
【问题描述】:
我正在尝试将 swift 字典数组传递给 NSMutableArray。但我收到错误“无法将 [[String : Anyobject?]] 类型的值转换为预期的参数类型 NSMutableArray”。下面是代码:
var ary : [[String:AnyObject?]] = []
var mutableDictionary = [String: AnyObject?]()
for c in buffer {
mutableDictionary.updateValue(c.Name, forKey: "name")
mutableDictionary.updateValue(c.Number, forKey: "phoneNumber")
mutableDictionary.updateValue(c.id, forKey: "id")
ary.append(mutableDictionary)
}
现在将这个“ary”作为 NSMutableArray 传递给 Objective C 方法!
Manager.sharedInstance().List(ary)
【问题讨论】:
-
试试
Manager.sharedInstance().List(ary as! NSMutableArray)。 -
不,它会崩溃,因为从 [[string : anyobject?]] 转换为 nsmutablearray 总是失败
-
NSMutableDictionary不能包含可选项,NSMutableArray也不能。您必须删除AnyObject上的可选项。 -
@Avi 耶!谢谢工作!
标签: ios objective-c arrays swift dictionary