我是Swift的新手,并接管了用xCode 7.4用swift 2.2编写的项目。我将其转换为xCode 8和swift3,只剩下一个编译器错误。请帮助解决此问题。
'[String : AnyObject]' is not convertible to '[HTTPCookiePropertyKey : Any]'
这是令人反感的代码行。
let cookie = HTTPCookie(properties: dict as! [String : AnyObject] as! [HTTPCookiePropertyKey : Any])
这会解决吗?
let cookie = HTTPCookie(properties: dict as! [HTTPCookiePropertyKey : Any])
最佳答案
对于未指定的字典值,在Swift 3中AnyObject
已替换为Any
。
由于HTTPCookiePropertyKey
是(NS)String
的类型别名,因此您可以直接转换类型
let cookie = HTTPCookie(properties: dict as! [HTTPCookiePropertyKey : Any])
甚至会
let cookie = HTTPCookie(properties: dict)
可以工作。
关于ios - Swift3-'[String:AnyObject]'无法转换为'[HTTPCookiePropertyKey:Any]',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40486632/