2015-02-03 4 views
1

지도를 움직일 때 idleAtCameraPosition 및 didChangeCameraPosition을 검색 한 후이 메소드가 호출된다는 것을 알게되었습니다. 어떻게 신속하게이 메소드를 작성할 수 있습니까? CLLocationManagerDelegate 및 GMSMapViewDelegate 대리자를 설정했지만 여전히이 메서드는 호출되지 않습니다. 나는 아래와 같은 방법으로 문서를 작성했습니다 :신속한 Google지도의 카메라 위치 감지 방법

func mapView(mapView: GMSMapView!, didChangeCameraPosition position: GMSCameraPosition!) { 
       print(position) 
} 

func mapView(mapView:GMSMapView!,idleAtCameraPosition position:GMSCameraPosition!) 
{ 
    print(position) 

} 

그러나 내 방법이 호출되지 않습니다. 정보 창을 맞춤 설정하려면 다음을 수행하십시오. Custom Info Window for Google Maps. 그러나 방법을 신속하게 동일한 방법을 찾을 수 없습니다. 나는 이것을 빨리 얻지 못해서 새로운 일이다.

+0

을 사용할 수 있습니다 mapView 대리인에게 가치를 할당 했습니까? 예 :'self.mapView.delegate = self'? – ztan

+0

@ztan 네, 저런 짓을했는데 아직 작동하지 않습니다 –

답변

4

아마도 너무 늦었지만 GMSMapViewDelegate를 사용하여 클래스를 확장해야합니다. 예를 들어 : 그 카메라의 위치가 변경 될 때마다 응답이와

self.mapView.delegate = self 

, 방법 didChangeCameraPosition :

class NearMeViewController: CLLocationManagerDelegate, GMSMapViewDelegate 

그런 다음, Ztan 말한다 방법, 당신은 당신의지도를 위임 할 수있다.

희망이 있습니다.

+0

고마워요! 기ume 파셰 –

0

당신은 당신의 viewDidLoad()

을에 클래스

풋 self.mapView.delegate = 자기의 상단에있는 GMSMapViewDelegate을 가져와야하고이 방법

func mapView(mapView: GMSMapView, idleAtCameraPosition position: GMSCameraPosition) { 

     // You can use the position.target for get the current camera position 

}