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 中的数组中使用多个部分和多个字典填充 TableView