我正在使用适用于iOS的Google Maps API,并希望使用标记群集实用程序.我想出了如何显示聚类标记,但我想自定义标记.有人可以解释如何设置/更改每个标记或聚类标记的图标和标题吗?示例代码非常有用.
class POIItem: NSObject, GMUClusterItem {
var position: CLLocationCoordinate2D
var name: String!
init(position: CLLocationCoordinate2D, name: String) {
self.position = position
self.name = name
}
}
class MyRenderer: NSObject, GMUClusterRenderer {
var mapView: GMSMapView
var clusterIconGenerator: GMUClusterIconGenerator
var clusterManager: GMUClusterManager
init(mapView: GMSMapView, clusterIconGenerator: GMUClusterIconGenerator, clusterManager: GMUClusterManager) {
self.mapView = mapView
self.clusterIconGenerator = clusterIconGenerator
self.clusterManager = clusterManager
}
func renderClusters(clusters: [GMUCluster]) {
}
func update() {
}
}
Run Code Online (Sandbox Code Playgroud)
这就是我到目前为止所拥有的.我不知道如何处理renderClusters和更新函数.
google-maps google-maps-markers ios google-maps-sdk-ios swift
我正在开发一个应用程序,我想在该应用程序上在地图上显示很多事件。用户可以单击一个事件并查看有关它的大量信息。我使用自定义图像自定义了每个事件的标记图标,现在我想对每个自定义标记进行聚类。我可以对 GoogleMaps API 的默认图标进行聚类,但是如果我想对自己的标记图标进行聚类,我就无法做到。
这是我当前的代码:
var mapView: GMSMapView!
var clusterManager: GMUClusterManager!
let isClustering: Bool = true
let isCustom: Bool = true
override func viewDidLoad() {
super.viewDidLoad()
mapView = GMSMapView(frame: view.frame)
mapView.camera = GMSCameraPosition.camera(withLatitude: 13.756331, longitude: 100.501765, 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: …
Run Code Online (Sandbox Code Playgroud)