swift - 组合多个 NSMutableDictionary

标签 swift nsdictionary nsmutabledictionary

我有一个递归函数,可以将以前的字典添加到新字典中,但使用 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 is not implicitly convertible to '[NSObject: AnyObject]'; did you mean to use 'as' to explicitly convert?

之后我的代码将变成我应该保持原样还是编辑 NSpbject 部分?

strArrayCallback.addEntriesFromDictionary(response! as [NSObject : AnyObject])

编辑2: 如果您想知道 JSON 模型是什么样子,这是它的图片

enter image description here

最佳答案

您应该将响应转换为您期望的字典类型,方法如下:

if let responseDictionary = response as? Dictionary<String, AnyObject> {
    strArrayCallback.addEntriesFromDictionary(responseDictionary)
}

关于swift - 组合多个 NSMutableDictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35306646/

相关文章:

iphone - SIGABRT 同时将 NSDictionary 传递给 UITableView

iphone - 删除 NSMutableDictionary 中索引 20 之后的所有对象?

ios - 如何查找 NSMutableDictionary 中的重复项?

ios - 使用 Firebase 的 Xcode 编译错误

ios - 使用滑动关闭 UITextField 键盘

ios - 我将多个图像连接成一根绳子。我怎样才能减少绳索的弹性?

ios - XCode 版本 6.1 (6A1052d) 更新导致错误 : 'dictionaryWithCapacity' has been explicitly marked unavailable here (Foundation. NSMutableDictionary)

ios - 如何在 Swift 中实现全局化?

ios - Short 从字典中获取带有数组键的对象

ios - NSSortDescriptor 不按字母顺序排序