2015-08-06 17 views
6

Google haritayı işaretçiye ortalamayı ve kullanıcı bir işaretçiye dokunduğunda yakınlaştırmayı deniyorum. Bunu tıklama temsilcisini kullanarak Android'de yapabilirim, ancak Swift'de bunu yapmanın bir yolunu bulamıyorum.Marker üzerindeki Swift Google Haritalar Merkezi Tıklayın

Bu sorunu çözmek için herhangi bir ipucu veya öneri var mı? (Ayrıca bir dolgu verebilir:

func mapView(mapView: GMSMapView, didTapMarker marker: GMSMarker) -> Bool { 

    //you can handle zooming and camera update here 

} 

sizin gibi birden fazla pozisyon için sınır oluşturarak kamera güncelleyebilirsiniz:

cevap

1

Daha sonra aşağıda fonk var GMSMapViewDelegate protokolünü uymak zorunda)

let bounds = GMSCoordinateBounds(coordinate: self.userLocation!.coordinate, coordinate: marker.position) 
self.mapView.animateWithCameraUpdate(GMSCameraUpdate.fitBounds(bounds, withPadding: 120.0)) 

bağlı ve aynı zamanda böyle bir yakınlaştırma seviyesi ile aynı pozisyonda ile kamera pozisyonu güncelleyebilirsiniz:

self.mapView?.camera = GMSCameraPosition.cameraWithTarget(marker.position, zoom: 9.0) 
0

Ben bölgelerinde sorunuza cevap verecektir:

Merkezi işaretleyici üzerinde Google Harita: lat, uzun süre İşaretçinizi koymak yerin koordinatları

let camera = GMSCameraPosition.cameraWithLatitude(lat, longitude: long, zoom: 8.0) 
self.mapView.camera = camera 

. Kullanıcı bir işaretleyici musluklar

Zum:

func mapView(mapView: GMSMapView, didTapMarker marker: GMSMarker) -> Bool { 
    let update = GMSCameraUpdate.zoomBy(2) 
    mapView.animateWithCameraUpdate(update) 
} 

Ayrıca, sınıf GMSMapViewDelegate uygun olduğundan emin olun.