0%

[swift] IOS地圖運用 (6) 透過CLGeocoder轉換經緯度與地址

IOS提供CLGeocoder將地址轉成經緯度,或是把經緯度轉換成地址,詳細語法如下

  • 記得先Import MapKit
  • 地址轉經緯度(geocodeAddressString) ```swift
    let geoCoder = CLGeocoder()
    geoCoder.geocodeAddressString(“這邊帶入地址”, completionHandler: {
    (placemarks:[AnyObject]!,error:NSError!) -> Void in
    if error != nil{
    println(error)
    return
    
    }
    if placemarks != nil && placemarks.count > 0{
    let placemark = placemarks[0] as CLPlacemark
    //placemark.location.coordinate 取得經緯度的參數   }
    
    })
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

* 經緯度轉地址的方法 ```swift
let geoCoder = CLGeocoder()
geoCoder.reverseGeocodeLocation(CLLocation(latitude: 25.024839 , longitude: 121.549170), completionHandler: {
(placemarks:[AnyObject]!,error:NSError!) -> Void in
if error != nil{
println(error)
return
}

//name 街道地址
//country 國家
//province 省
//locality 市
//sublocality 縣.區
//route 街道、路
//streetNumber 門牌號碼
//postalCode 郵遞區號
if placemarks != nil && placemarks.count > 0{
let placemark = placemarks[0] as CLPlacemark
//這邊拼湊轉回來的地址
//placemark.name
}
})