我正在使用Swift 3和Alamofire 4.0。我可以打印出整个响应,但无法遍历和打印出每个值。当我尝试在下面打印“标题”时,出现“ NSFastEnumerationIterator.Element”类型(又名“ Any”)没有下标成员的情况。我们非常感谢您的帮助。
Alamofire.request(url).responseJSON { response in if let dict = response.result.value as? Dictionary<String, AnyObject> { if let datas = dict["data"] as? NSArray{ for data in datas{ print("DEVELOPER: \(data)") if let title = data["myTitle"] as? String{ print(title) } } } } }
只需使用本机Swift Array。除非绝对没有选择,否则请 始终 使用Swift本机类型。NSArray缺少类型信息,因此编译器无法推断该数组包含字典。
Array
NSArray
if let datas = dict["data"] as? [[String:Any]] {