Swift字典到数组以填充pickerView

Posted

技术标签:

【中文标题】Swift字典到数组以填充pickerView【英文标题】:Swift Dictionary to Array to populate pickerView 【发布时间】:2016-08-23 13:50:55 【问题描述】:

我有一本字典... ["12": "AB", "13": "CD"]

我正在尝试使用此字典来填充pickerView,因此我尝试将字典拆分为数组,因为只有 AB、CD 需要显示在选择器中,但一旦选择它们需要对应回它们的键。

我不断收到“LazyMapCollection”类型的无法转换值?到预期的参数类型 [_]

newArray = Array(arrayLiteral: myDictionary.keys)

我试过改变数组的类型,使用 NSMutableArray 等,但同样的错误不断弹出。

如果有人有更好的使用字典和选择器的方法,我愿意接受建议,或者如果有人可以帮助我解决这个问题。

谢谢

【问题讨论】:

【参考方案1】:
newArray = Array(myDictionary.values)

您的newArray 将包含"AB""CD" 字符串。

【讨论】:

尽管两者都有效,但肯定比我的答案好 这仍然返回与上述相同的错误:S @jack-of-diamonds,这意味着您没有在此处发布的代码存在问题。这两行let myDictionary = ["12": "AB", "13": "CD"] let newArray = Array(myDictionary.values) 在操场上完美执行。【参考方案2】:

我不知道这是否是最“迅速”的方式,但这很有效:

var myArray: [String] = []
let dict =  ["12": "AB", "13": "CD"]
for (key, value) in dict 
    myArray.append(value)

【讨论】:

【参考方案3】:

我怀疑这是一个错字。如果你想要 AB 和 CD,你不应该得到值而不是键吗?

let newArray = Array(myDictionary.values)

【讨论】:

以上是关于Swift字典到数组以填充pickerView的主要内容,如果未能解决你的问题,请参考以下文章

从字典数组 Swift 中填充 UITableView

在 Swift 中的数组中使用多个部分和多个字典填充 TableView

保存 Core Data 数组和字典

swift:将传入的 json 数组转换为字典和对象

iOS:从 JSON 切换到 CoreData 以保持本地持久数据;这实用吗?数组内字典 数组内字典

Swift 3:数组到字典?