伙计们,我一直在从事与Google Places和Maps API相关的项目。
我想做的就是搜索最近的餐馆。但是我不能在地图上放置多个圆圈。用户当前位置在地图上可以看到一个标记。这是代码。

func setUpMarkersForLibraries(locations: [CLLocationCoordinate2D]){
print("Setting up Markers")
var i = 0
for l in locations{
    let circleCenter = l
    let circ = GMSCircle(position: circleCenter, radius: 30)

    circ.fillColor = UIColor(red: 0, green: 0.89, blue: 0, alpha: 0.8)
    circ.strokeColor = .black
    circ.strokeWidth = 5
    circ.title = "\(i)"
    circ.map = mapView

}
}


我传递使用Google Places API网络服务获得的所有位置的坐标。因此共有20个位置,因此应该有20个标记。但是没有。请让我知道我做错了。谢谢。

最佳答案

此功能看起来不错。

一旦绘制到地图上,标记可能就不会更新。不同于用户所在的位置。最有可能添加了圈子。

在将标记添加到地图之前/期间调用您的方法...对于MapKit,我用来创建自定义注释/标记的函数是:

mapView(_ mapView:MKMapView,viewFor注释:MKAnnotation)-> MKAnnotationView?

这比仅将一个圆添加到坐标要好,因为它成为标记的属性,而不是地图叠加层。

快速浏览该文档还表明,GMSMarker属性iconView也可以用于添加自定义视图。

希望这会有所帮助,祝您编程愉快。

08-06 07:29