这一直有效,直到几天前我升级到xcode 7.3。它将编译并正常运行,直到需要存档项目为止。在存档期间,第二个问号出现“Ambiguous Use of Subscript”错误?
if let address = placemark.addressDictionary?["FormattedAddressLines"]?[1]
{
//do something
}
关于如何纠正这个想法?
最佳答案
Ambiguous Use of Subscript
意味着编译器无法推断您要使用哪个下标。看起来placemark.addressDictionary?["FormattedAddressLines"]
返回的类型对于编译器来说还不清楚。
尝试将其分解为:
let addressLines = placemark.addressDictionary?["FormattedAddressLines"] as? [String]
if let address = addressLines?[1]
{
//do something
}
我没有尝试过,所以语法不是100%。但这将强制类型为字符串数组(我认为),这是您期望返回的值。
关于ios - 下标的模棱两可使用-仅在归档期间发生,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36206665/