首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS谷歌地图开发工具包GMSMarker定位

iOS谷歌地图开发工具包GMSMarker定位
EN

Stack Overflow用户
提问于 2013-05-22 16:17:27
回答 2查看 10.5K关注 0票数 13

我正在使用谷歌地图,我可以使用以下命令将地图居中放置到GMSMarker

代码语言:javascript
复制
 GMSCameraPosition *camera =
    [[GMSCameraPosition alloc] initWithTarget:marker.position
                                         zoom:MAP_ZOOM_LEVEL
                                      bearing:0
                                 viewingAngle:0];
    [mapView animateToCameraPosition:camera];

我显示了一个200*150大小的自定义标注,当相机位置改变时,它的一部分会被隐藏,但我希望标注在中心,地图点在它的下方。有什么好办法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-23 14:07:41

看看如何使用GMSProjection。要将地图的中心从标记位置移开100px,您可以执行如下操作:

代码语言:javascript
复制
- (BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker *)marker {
  CGPoint point = [mapView_.projection pointForCoordinate:marker.position];
  point.x = point.x + 100;
  GMSCameraUpdate *camera =
      [GMSCameraUpdate setTarget:[mapView_.projection coordinateForPoint:point]];
  [mapView_ animateWithCameraUpdate:camera];
  return YES;
}
票数 18
EN

Stack Overflow用户

发布于 2017-06-08 23:08:28

Swift 4,3

代码语言:javascript
复制
func mapView(_ mapView: GMSMapView, didTap marker: GMSMarker) -> Bool {
    var point:CGPoint = mapView.projection.point(for: marker.position)
    point.x = point.x + 100

    let camera:GMSCameraUpdate = GMSCameraUpdate.setTarget(mapView.projection.coordinate(for: point))
    mapView.animate(with: camera)

    return true
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16686795

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档