13

私はGoogleマップで作業しており、使用してマップをGMSMarkerの中心に置くことができます

 GMSCameraPosition *camera =
    [[GMSCameraPosition alloc] initWithTarget:marker.position
                                         zoom:MAP_ZOOM_LEVEL
                                      bearing:0
                                 viewingAngle:0];
    [mapView animateToCameraPosition:camera];

サイズ 200*150 のカスタム吹き出しを表示していますが、カメラの位置が変更されるとその一部が非表示になりますが、吹き出しを中央に配置し、マップ ポイントをその下に配置したいと考えています。これを行う方法についてのアイデア。

4

2 に答える 2

5

スイフト4、3

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
}
于 2017-06-08T15:08:28.113 に答える