iOS用の新しいGoogleMapsSDKを使用しています
GMSMapView.centerから真の座標を取得できますか?これでCGPointの値が返されますが、これは実際の座標ではありません。
ありがとう、よろしく。
iOS用の新しいGoogleMapsSDKを使用しています
GMSMapView.centerから真の座標を取得できますか?これでCGPointの値が返されますが、これは実際の座標ではありません。
ありがとう、よろしく。
projection
マップビューのメソッドを使用して- (CLLocationCoordinate2D)coordinateForPoint:(CGPoint)point
、マップ内のポイントを地質座標に変換します
CGPoint point = mapView.center;
CLLocationCoordinate2D coor = [mapView.projection coordinateForPoint:point];
[yourMapView.camera target]
Jingのソリューションの代わりに使用することをお勧めします。
JingのソリューションはiOS6で正常に機能しますが、iOS 7 / 7.1で問題が発生している可能性があるため、投影によって誤った座標が報告される場合があります(少し下向きのシフト)。マップの境界を確認しましたが、パディングが正しいことを確認しました。結果で[projection pointForCoordinate: coordinate]
あり、[projection coordinateForPoint:point]
互いに対照的である可能性があります。問題がどこにあるのかわかりません...
これがでそれを行う方法です Swift 4
let coordinate = mapView.projection.coordinate(for: mapView.center)
お探しmapView.camera.target
ですか?これはCLLocationCoordinate2D
です。
スウィフト4
let point = mapView.center
let coordinate = mapView.convert(point, toCoordinateFrom: mapView)
ユーザーがマップとの対話を許可されている場合、おそらくより良い方法は、マップのdid-become-idleデリゲートメソッドを使用することです。ここでは、カメラを変更するたびに中心座標を取得できます。
func mapView(_ mapView: GMSMapView, idleAt position: GMSCameraPosition) {
print(position.target)
}