2014-11-11 3 views
1

Как я могу получить координаты области и установить ее в центр обзора карты в swift?Область поиска получить координаты в swift MKMapView

У меня есть этот код:

var address = "1 Steve Street, Johannesburg, South Africa" 
var geocoder = CLGeocoder() 
geocoder.geocodeAddressString(address, {(placemarks: [AnyObject]!, error: NSError!) -> Void in 
if let placemark = placemarks?[0] as? CLPlacemark { 
    self.mapView.addAnnotation(MKPlacemark(placemark: placemark)) 
} 
}) 

Но что участки точки из адреса, как я могу получить только область, то есть: Johannesburg и установить его, чтобы быть основным направлением на карте зрения ?

+0

нужен этот код для преобразования адреса в Шир/- спасибо! – Jona

ответ

0

Маркировка имеет свойство region типа CLCircularRegion (подкласс CLRegion), который дает его координату центра и радиус в метрах.

Используя MKCoordinateRegionMakeWithDistance, вы можете создать MKCoordinateRegion, чтобы установить вид карты region.

Пример:

var address = "Johannesburg, South Africa" 
var geocoder = CLGeocoder() 
geocoder.geocodeAddressString(address, {(placemarks: [AnyObject]!, error: NSError!) -> Void in 
    if let placemark = placemarks?[0] as? CLPlacemark { 

     if let pmCircularRegion = placemark.region as? CLCircularRegion { 

      let metersAcross = pmCircularRegion.radius * 2 

      let region = MKCoordinateRegionMakeWithDistance 
        (pmCircularRegion.center, metersAcross, metersAcross) 

      self.mapView.region = region 
     } 

    } 
}) 
Смежные вопросы