从NSDictionary转换为[String:Any?]

4

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

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

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

是否有一种方法可以将 NSDictionary 转换为 [String:Any?]


2
你尝试过什么?哪些方法不起作用?你是如何进行转换的,具体问题是什么,为什么无法将其转换为[String:Any?]? - nhgrif
2个回答

3

仅作为示例:

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

数据在此处为JSON对象。请相应使用它。

-3
希望这能帮到你:
let dict = NSDictionary()
var anyDict = [String: Any?]()

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

谢谢,但是你的解决方案只会给我一个关键输出..其他的关键字都被覆盖了。 - Zuhair Ali
我修复了你的代码,现在它可以工作了:`let dict = NSDictionary() var anyDict = String: Any?for (value, key) in dict { anyDict[key as! String] = value }` - Zuhair Ali
3
@ZuhairAli 这有点荒谬,仅仅为了稍后自己修复而接受错误答案。 :) 你应该写下自己的答案,并附上正确的代码。 - Eric Aya
添加...这不应该是(key, value)而不是另一种方式吗? - PSchuette
1
***for (key, value)***,而不是 ***for (value, key)***。 - famfamfam

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接