3
나는 뷰 컨트롤러가 GMSMapView
이고 맵에 여러 마커를로드했습니다. mapView.selectedMarker = ...
으로 선택한 마커를 변경할 수 있지만 선택한 마커의 색상은 어떻게 변경합니까?신속하게 선택한 경우 Google지도 아이콘 색상을 변경하는 방법은 무엇입니까?
나는 뷰 컨트롤러가 GMSMapView
이고 맵에 여러 마커를로드했습니다. mapView.selectedMarker = ...
으로 선택한 마커를 변경할 수 있지만 선택한 마커의 색상은 어떻게 변경합니까?신속하게 선택한 경우 Google지도 아이콘 색상을 변경하는 방법은 무엇입니까?
GMSMarker.markerImage(with: <UIColor?>)
을 사용하여 마커 아이콘을 재설정 할 수 있습니다.
문서 : Google Maps iOS SDK GMSMarker Class Reference
import GoogleMaps
// view controller
class MapViewController: UIViewController {
// outlets
@IBOutlet weak var mapView: GMSMapView!
// view did load method
override func viewDidLoad() {
super.viewDidLoad()
// set map view delegate
mapView.delegate = self
}
}
// extension for GMSMapViewDelegate
extension MapViewController: GMSMapViewDelegate {
// tap map marker
func mapView(_ mapView: GMSMapView, didTap marker: GMSMarker) -> Bool {
print("didTap marker \(marker.title)")
// remove color from currently selected marker
if let selectedMarker = mapView.selectedMarker {
selectedMarker.icon = GMSMarker.markerImage(with: nil)
}
// select new marker and make green
mapView.selectedMarker = marker
marker.icon = GMSMarker.markerImage(with: UIColor.green)
// tap event handled by delegate
return true
}
}