2
我已經升級到xcode 7 beta 6,因爲iOS 9將很快應用於我們。除了一個例外,我很高興我的代碼轉換時沒有太多麻煩。xcode 7 Beta 6中對地標addressDictionary的更改
看來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開發的新手。
感謝您的支持。我理解展開的概念,但有時會感覺有些抽象,並且偶爾會讓我感到不安。我以爲我試過這個,但顯然我沒有。 –
在Swift的設計中有許多智慧,但處理選項確實需要練習。 – vacawama
我有這個和平的代碼: 如果讓地址= placeMark.addressDictionary?[「FormattedAddressLines」] [0]?如?字符串 和我得到相同的錯誤。 –