我一直在玩Swift。我有類型的多個錯誤,特別是使用Swift和我的舊Objective-C類。這個方法的問題是:我期待在Objective-C中由NSDictionarys組成的數組。如何在swift中將字典分配給AnyObject
var curArr:[Dictionary<String, AnyObject>] = self.getItemsForCurrentStack()
var arrToReturn:[(Dictionary<String, AnyObject?>)] = []
for obj in curArr{
arrToReturn.append(["image": UIImage(named: obj["imageName"] as! String), "color": UIColor(red:obj["colorDic"]!["red"] as! CGFloat, green:obj["colorDic"]!["green"] as! CGFloat, blue:obj["colorDic"]!["blue"] as! CGFloat, alpha:1.0), "percentage": obj["percantage"]])
}
return arrToReturn
這將返回Swift中的Dictionaries(它是NSDictionaries)。但最後一行拋出我的錯誤:
Dictionary' is not identical to 'AnyObject'
我使用as! [AnyObject]
嘗試,但拋出另一個錯誤:
'AnyObject' is not a subtype of 'Dictionary'
我沒有得到第二個錯誤,因爲這不必是一個子類型,但相反。有關如何解決這個問題的任何想法?我沒有找到幾個小時的谷歌和研究的答案。
VAR arrToReturn:[字符串:AnyObject] = []或VAR arrToReturn:[AnyObject] = [],如果你想返回AnyObjects的陣列 –