是的,对于同样的错误还有其他SO答案。但我无法找到一个足以代表我的案例让我弄明白。请帮忙。
这些行没有关系。他们在不同的街区。然而,他们给出了同样的错误。
'阵列'不可用:请从您的延迟序列构建一个数组:Array(...)
编辑:这些都归功于Vadian。正确的代码张贴谁下降:)
//let recordDic = YALCity.defaultContent().values.array[selectedIndexPath.row] // re-written
let recordArray = Array(YALCity.defaultContent().values)
let recordDic = recordArray[selectedIndexPath.row]
//let cityName = YALCity.defaultContent().keys.array[indexPath.row] // re-written
let cityArray = Array(YALCity.defaultContent().keys)
let cityName = cityArray[indexPath.row]
修正了这个。
// for element in recordDic.keys.array { // error
for element in Array(recordDic.keys) // fixed :)
还是不能得到这个。
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return YALCity.defaultContent().keys.array.count
} // error
天哪,我明白了!
return Array(YALCity.defaultContent().keys).count
答案 0 :(得分:3)
错误消息表明您无法将array
用作财产。建议的语法是
let cityArray = Array(YALCity.defaultContent().keys)
let cityName = cityArray[indexPath.row]