【发布时间】:2015-08-28 09:28:12
【问题描述】:
我已升级到 xcode 7 beta 6,因为 iOS 9 即将推出。我很高兴我的代码转换没有太多麻烦,除了一个例外。
好像placemark.addressDictionary改成[NSObject: AnyObject]了?
这是我在 xCode 6 中用于地图搜索的代码
for item in response.mapItems as! [MKMapItem] {
var placeMarkAddress = item.placemark.addressDictionary
let street:String = placeMarkAddress["Street"] != nil ? placeMarkAddress["Street"] as! String : ""
}
这不再适用于 placeMarkAddress 现在是 [NSObject: AnyObject]?
如何通过按名称引用 NSObject 来获取值 (AnyObject)?
我在 xcode7 中试过这个
for item in response!.mapItems {
var placeMarkAddress = item.placemark.addressDictionary
for placeMarkAddress in placeMarkAddresses!{
print(placeMarkAddress)
}
}
我得到的输出是这样的。
(FormattedAddressLines, [440 Castro St, San Francisco, CA 94114-2020, United States])
(Street, 440 Castro St)
(SubAdministrativeArea, San Francisco)
(Thoroughfare, Castro St)
(ZIP, 94114)
(Name, 440 Castro)
(City, San Francisco)
(PostCodeExtension, 2020)
(Country, United States)
(State, CA)
(SubLocality, Castro)
(SubThoroughfare, 440)
(CountryCode, US)
这对你们中的一些人来说可能很明显,但我还是 iOS 开发的新手。
【问题讨论】: