我有一个递归函数,它将以前的字典添加到新字典中,但使用 addEntriesFromDictionary 会给我错误
这是我的示例代码(已编辑)
func fetchAllSWApiList(strUrl: String, strArrayCallback: NSMutableDictionary){
let swApiHandler = SwApiHandler()
let url = strUrl
swApiHandler.requestSWPApi(url, completionHandler: {(response, error) in
if let responseDictionary = response as? Dictionary<String, AnyObject> {
print("Did Detect a dictionary")
strArrayCallback.addEntriesFromDictionary(responseDictionary)
}
guard let nextPage: String = response!["next"]! as? String else {
print("End Of Page")
print(strArrayCallback.description)
return
}
print(nextPage)
self.fetchAllSWApiList(nextPage, strArrayCallback: strArrayCallback)
})
}
如果你的代码中有一个更好的解决方案,它会递归地从提取的数据中返回组合列表,效果会更好。
编辑:这是错误
NSDictionary不能隐式转换为&#39; [NSObject:AnyObject]&#39 ;; 你的意思是使用&#39;作为&#39;明确转换?
之后我的代码将成为我应该保留原样还是编辑NSpbject部分?
strArrayCallback.addEntriesFromDictionary(response! as [NSObject : AnyObject])
EDIT2: 如果您想知道JSON模型在这里是什么样的,那就是它的照片
答案 0 :(得分:0)
您应该通过执行以下操作将您的回复转换为您期望的词典类型:
if let responseDictionary = response as? Dictionary<String, AnyObject> {
strArrayCallback.addEntriesFromDictionary(responseDictionary)
}