无法从android中的谷歌地图中心获取latlong

无法从android中的谷歌地图中心获取latlong,第1张

概述我使用mapFragment在我的应用程序中显示谷歌地图.我想获得地图中心的纬度和经度.我已将标记图像放在xml文件中的地图中心,<fragmentandroid:id="@+id/map"android:name="com.google.android.gms.maps.SupportMapFragment"android:layout_width="matc

我使用mapFragment在我的应用程序中显示谷歌地图.我想获得地图中心的纬度和经度.

我已将标记图像放在xml文件中的地图中心,

<fragment        androID:ID="@+ID/map"        androID:name="com.Google.androID.gms.maps.SupportMapFragment"        androID:layout_wIDth="match_parent"        androID:layout_height="match_parent" />     <ImageVIEw  androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:layout_gravity="center"        androID:src="@drawable/marker_image"        />

因此,这将标记放置在屏幕的中心,以便用户拖动地图,我应该能够获得地图中心的纬度和经度.

这就是我以前得到的地图中心,

VisibleRegion visibleRegion = GoogleMap.getProjection()                    .getVisibleRegion();Point x = GoogleMap.getProjection().toScreenLocation(visibleRegion.farRight);Point y = GoogleMap.getProjection().toScreenLocation(visibleRegion.nearleft);Point centerPoint = new Point(x.x / 2, y.y / 2);LatLng centerFromPoint = GoogleMap.getProjection().fromScreenLocation(                    centerPoint);

问题是我将centerFromPoint LatLng值的值变为0.0.

我甚至试过用

LatLng loc = GoogleMap.getCameraposition().target;

即使在这种情况下,我的loc值也是0.0.

我无法弄清楚为什么我没有得到纬度和经度值.

解决方法:

您可能在地图尚未加载时尝试获取相机位置.而是使用OnMapLoadedCallback侦听器等待,然后获取中心:

mMap.setonMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {    @OverrIDe    public voID onMapLoaded() {        Log.e("TAG", GoogleMap.getCameraposition().target.toString());    }});
总结

以上是内存溢出为你收集整理的无法从android中的谷歌地图中心获取latlong全部内容,希望文章能够帮你解决无法从android中的谷歌地图中心获取latlong所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1111697.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存