Der*_*ike 8 google-maps marker google-maps-markers ios swift
我有一个带有a的视图控制器,GMSMapView并在地图上加载了许多标记.我可以更改选择哪个标记,mapView.selectedMarker = ...但如何更改所选标记的颜色?
Der*_*ike 21
您可以使用GMSMarker.markerImage(with: <UIColor?>)重置标记的图标.
文档:Google Maps iOS SDK GMSMarker类参考
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
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11501 次 |
| 最近记录: |