위의 일부 설정과 함께 GMSMapView
대리인을 사용해야합니다.
GMSMapViewDelegate
방법의 사용을 선언하고 self
에 위임 설정 : 정보창에 수돗물을 검출
class yourClassName: UIViewController,GMSMapViewDelegate
mapView?.delegate = self
방법 :
func mapView(_ mapView: GMSMapView, didTapInfoWindowOf marker: GMSMarker) {
print("infowindow tapped")
}
방법 GMSMarker
에 수돗물을 검출 :
func mapView(mapView: GMSMapView, didTapMarker marker: GMSMarker) -> Bool {
print("tapped on marker")
if marker.title == "myMarker"{
print("handle specific marker")
}
return true
}
방법은 사용자 정의 정보창을 만들려면 다음
func mapView(mapView: GMSMapView!, markerInfoWindow marker: GMSMarker!) -> UIView! {
let infoWindow = Bundle.main.loadNibNamed("nibName", owner: self, options: nil).first as! ClassName
infoWindow.name.text = "title"
infoWindow.address.text = "relevant address"
infoWindow.photo.image = UIImage(named: "imageName")
return infoWindow
}
늦은 업데이트에 대한 내 사과는 지금 ... 당신이 대리자를 설정 누락 – vaibhav
를 완벽 작동하고 ANS를보고 내가 본주십시오'_'있다 귀하의 방법 안에 마크를 달아서 실행하지 않도록 할 수 있습니다. – vaibhav