如何在 GoogleMaps for iOS 中使用自定义标记进行标记聚类?

Posted

技术标签:

【中文标题】如何在 GoogleMaps for iOS 中使用自定义标记进行标记聚类?【英文标题】:How to make marker clustering with custom markers in GoogleMaps for iOS? 【发布时间】:2017-07-29 21:24:40 【问题描述】:

我是 ios 开发的初学者。 我在我的应用程序上添加了 GoogleMaps,我可以将 GoogleMaps 的默认标记聚集在一起,但是当我通过计算机中的图像自定义标记时,自定义标记无法聚集。 有人可以帮我在 Swift 3 中做到这一点吗?

我给你看我的一部分代码:

override func viewDidLoad() 

mapView = GMSMapView(frame: view.frame)
mapView.camera = GMSCameraPosition.camera(withLatitude: 48.898902, longitude: 2.282664, zoom: 12.0)
mapView.mapType = .normal
mapView.delegate = self
view.addSubview(mapView)

if isClustering 
    var iconGenerator: GMUDefaultClusterIconGenerator!
    if isCustom  // Here's my image if the event are clustered
        var images: [UIImage] = [UIImage(named: "m1.png")!, UIImage(named: "m2.png")!, UIImage(named: "m3.png")!, UIImage(named: "m4.png")!, UIImage(named: "m5.png")!]
        iconGenerator = GMUDefaultClusterIconGenerator(buckets: [10, 20, 50, 100, 200], backgroundImages: images)
     else 
        iconGenerator = GMUDefaultClusterIconGenerator()
    

    let algorithm = GMUNonHierarchicalDistanceBasedAlgorithm()
    let renderer = GMUDefaultClusterRenderer(mapView: mapView, clusterIconGenerator: iconGenerator)

    clusterManager = GMUClusterManager(map: mapView, algorithm: algorithm, renderer: renderer)
    clusterManager.cluster()
    clusterManager.setDelegate(self, mapDelegate: self)
 else 


// Here's my first custom markers (I don't write here others for simple code)
let firstLocation = CLLocationCoordinate2DMake(48.898902, 2.282664)
let marker = GMSMarker(position: firstLocation)
marker.icon = UIImage(named: "pointeurx1") //Apply custom marker
marker.map = mapView


func clusterManager() ...

【问题讨论】:

【参考方案1】:

您可以查看以下主题: How to cluster custom icons markers in GoogleMaps for iOS How to clustered markers from Firebase in GoogleMaps for iOS

您可以找到一个很好的答案,因为我上周遇到了同样的问题,请遵循这些建议。 希望对你有很大帮助

【讨论】:

是的,非常感谢,这对我帮助很大,因为我的问题现在也与 Firebase 有关 现在检查***.com/a/53928566/5790492和github.com/googlemaps/google-maps-ios-utils/blob/master/…

以上是关于如何在 GoogleMaps for iOS 中使用自定义标记进行标记聚类?的主要内容,如果未能解决你的问题,请参考以下文章

捕获 googlemaps for ios 的异常

让 GoogleMaps For Mobile 遵循预定义的路线

如何使用 Ionic 4 在 IOS 上修复“cordova-plugin-googlemaps 尚未安装或准备就绪”

如何在 Cloud Functions for Firebase 中使 HTTP 请求异步/等待?

如何在 iOS 13 中使 tabBar 清晰?

如何在 iOS 中使定位更准确?