我正在编写一个应用程序,当用户按下按钮时,该应用程序将在一个区域周围拍摄9张地图快照.
在循环中,使用它来移动和保存:
map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(mStartLat + (mMultiOffsetX + mWidth), mStartLng + (mMultiOffsetY + mHeight)), mZoom));
map.snapshot(this);
Run Code Online (Sandbox Code Playgroud)
并在onSnapshotReady中:
final String fileName = Environment.getExternalStorageDirectory().getAbsolutePath() + String.format("/test_maps/map_%f_%f.png", Double.valueOf(mStartLat + (mMultiOffsetX * mWidth)), Double.valueOf(mStartLng + (mMultiOffsetY * mHeight)));
FileOutputStream fos = new FileOutputStream(new File(fileName));
bmp.compress(CompressFormat.PNG, 0, fos);
Run Code Online (Sandbox Code Playgroud)
不幸的是,在拍摄快照时,地图偶尔会完成加载,因此您最终得到:

那么,有没有办法在地图视图加载完成后检测或设置监听器?
dan*_*117 47
在加载地图上的切片之后,OnMapLoadedCallback才会触发.只触发一次所以你必须调用它九次以拍摄九张快照.
当您有对地图的引用时,请设置回叫.
mMap.setOnMapLoadedCallback(this);
Run Code Online (Sandbox Code Playgroud)
当onMapLoaded事件触发时拍摄快照.
@Override
public void onMapLoaded() {
if (mMap != null) {
mMap.snapshot(this);
}
}
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅文档:https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/GoogleMap.OnMapLoadedCallback
祝好运
****等待实现此功能的历史.
更新:状态:固定标签:固定 - 2013年10月
问题5779评论#3由schr ... @ google.com:能够在地图完全加载/渲染时得到通知 http://code.google.com/p/gmaps-api-issues/issues/detail? ID = 5779
Google Maps Android API v2的最新版本中添加了地图加载的回调界面.
有关详细信息,请参阅文档:https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/GoogleMap.OnMapLoadedCallback
感谢大家主演的第5779号和第61675号Danny117
****编辑****
如果你来这里,请为这个问题加注星标. http://code.google.com/p/android/issues/detail?id=61675 您的星级点击将激励Google继续解决此问题.
地图更新13导致Google Play服务出现问题,因此您无法使用新的OnMapLoadedCallback.你可以编译反对,但在地图API生成的logcat的谷歌Play服务,过时的错误消息.需要4030500但找到3266130
*编辑* 全新的OnMapLoadedCallback
更新:状态:固定标签:固定 - 2013年10月
问题5779评论#3由schr ... @ google.com:能够在地图完全加载/渲染时得到通知 http://code.google.com/p/gmaps-api-issues/issues/detail? ID = 5779
Google Maps Android API v2的最新版本中添加了地图加载的回调界面.
有关详细信息,请参阅文档:https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/GoogleMap.OnMapLoadedCallback
感谢所有人主演5779号问题.Danny117
****以下内容已被弃用*****
看起来它等待更新解决方案.我点击了这颗星,因为我将在我自己的api v2地图中处理这个功能.
编辑***这是渲染地图时建议的新回调.访问的每个人都请关注链接并为此问题加注星标. http://code.google.com/p/gmaps-api-issues/issues/detail?id=5779
***以前的snapshop回调不会被更改.访问的每个人都请关注链接并为此问题加注星标. http://code.google.com/p/gmaps-api-issues/issues/detail?id=5712
| 归档时间: |
|
| 查看次数: |
17811 次 |
| 最近记录: |