移动谷歌地图,但不是像优步这样的标记

时间:2017-09-05 07:20:30

标签: ios swift google-maps

我正在开发一个使用Google地图的应用。 我希望标记引脚在屏幕中心稳定,如果我移动地图,则不应移动引脚。

当我离开地图时,我想要地图中保存稳定标记ID的地址。

任何帮助将不胜感激

3 个答案:

答案 0 :(得分:6)

你可以使用这个东西

mapView.delegate = self;


func mapView(_ mapView: GMSMapView, idleAt position: GMSCameraPosition) {
    let coordinate = mapView.projection.coordinate(for: markerView.center)
    print("latitude " + "\(coordinate.latitude)" + " longitude " + "\(coordinate.longitude)")
}

现在你需要在中心的mapview顶部添加一个imageview,它将与uber一样。

请记住,图标的高度应加倍。

如果您需要Pin Image

,可以使用此图标

答案 1 :(得分:0)

您可以在地图视图上方添加图像图层,其中包含指向屏幕中心的图钉图像。当用户离开地图时,从屏幕中心选择位置。

答案 2 :(得分:0)

将标记视图固定在视图的中心。

在顶视图中添加GMSMapview。

将代表设置为地图视图。

GMap.delegate = self; // Add delegate - GMSMapViewDelegate to your viewcontroller

检测用户是否拖动了地图:

func mapView(_ mapView: GMSMapView, idleAt position: GMSCameraPosition) {
        let coo = GMap.projection.coordinate(for: markerView.center)
        selectedLocation = CLLocation(latitude: coo.latitude, longitude: coo.longitude)
        getAddress() //get address of your selected location
    }