从 NSDictionary 转换为 [String:Any?]

Posted

技术标签:

【中文标题】从 NSDictionary 转换为 [String:Any?]【英文标题】:Convert from NSDictionary to [String:Any?] 【发布时间】:2016-06-14 11:31:41 【问题描述】:

我正在使用 xmartlabs/Eureka 构建具有动态表单的应用程序。

为了填写表格,我必须使用setValues(values: [String: Any?])

但我在 NSDictionary 变量中有表单值,我无法将其转换为 [String:Any?]

有没有办法将NSDictionary 转换为[String:Any?]

【问题讨论】:

and I cannot cast it to [String:Any?] 你试过什么?什么没用?您是如何尝试投射它的?究竟是什么问题? 【参考方案1】:

只是一个例子:

if let content = data["data"] as? [String:AnyObject] 
    print(content)

这里的数据是一个 JSON 对象。相应地使用它。

【讨论】:

【参考方案2】:

希望这会有所帮助:

let dict = NSDictionary()
var anyDict = [String: Any?]()

for (value, key) in dict 
    anyDict[key as! String] = value

【讨论】:

谢谢,但您的解决方案只会给我一个键输出.. 其他键被覆盖 我修复了你的代码,它现在可以工作了:let dict = NSDictionary() var anyDict = [String: Any?]() for (value, key) in dict anyDict[key as! String] = value @ZuhairAli 接受错误的答案只是为了以后自己修复它有点荒谬。 :) 您应该用正确的代码编写自己的答案。 添加...不应该是(键,值)而不是相反吗? for (key, value) , NOT for (value, key)

以上是关于从 NSDictionary 转换为 [String:Any?]的主要内容,如果未能解决你的问题,请参考以下文章

如果将一个NSObject从NSDictionary转换为NSString?

将 JSON 数据从 NSData 转换为 NSDictionary

如何将 NSString 从 JSON 转换为 NSDictionary? [关闭]

从具有属性的 NSObject 转换为 NSDictionary 的 Obj-C 简单方法?

将 NSDictionary 对象转换为 NSData 对象,反之亦然

如何将 NSDictionary 转换为 Dictionary?