Android google地图缩放时的平铺覆盖更新
我在Android谷歌地图上有一个平铺覆盖。一切正常。但是当我放大时,所有的图块都消失了,然后下载新的图块,只有在1-2秒后(当下载新的图块时),地图才会显示它们。因此,地图在一段时间内不显示分幅。是否有办法仅在下载新的互动程序时更新互动程序 我使用基本的UrlTileProvider和Aeris叠加贴图 无论如何,您可以使用库(或单独的Android google地图缩放时的平铺覆盖更新,android,google-maps,Android,Google Maps,我在Android谷歌地图上有一个平铺覆盖。一切正常。但是当我放大时,所有的图块都消失了,然后下载新的图块,只有在1-2秒后(当下载新的图块时),地图才会显示它们。因此,地图在一段时间内不显示分幅。是否有办法仅在下载新的互动程序时更新互动程序 我使用基本的UrlTileProvider和Aeris叠加贴图 无论如何,您可以使用库(或单独的线程或异步任务)等本地内部或外部存储,并确定“手动下载所有新磁贴”事件(例如,在每个public void onSuccess()上增加已下载磁贴计数器)对于毕
线程
或异步任务
)等本地内部或外部存储,并确定“手动下载所有新磁贴”事件(例如,在每个public void onSuccess()上增加已下载磁贴计数器)
对于毕加索或受保护的void onPostExecute()
对于异步任务
或在公共void run()结束时运行(
对于线程
并等待等于所有磁贴数量),然后用于下载的磁贴本地存储,如回答中所示
更新
当zoom+1级别的分幅仍在下载时,可以使用当前地图视图的屏幕截图创建上一张地图。谷歌地图的屏幕截图,你可以在回答问题时这样做
更新#2
有几种方法可以解决您的问题:1)您可以创建自定义视图,它可以像answer中那样扩展MapView
类,并显示在覆盖的dispatchDraw()中
方法任何您想要的方法或2)您可以在地图视图上设置ImageView
,并在缩放更改和加载新分幅时显示屏幕截图。如有必要,您可以将点击事件从ImageView
转换为MapView
等
我更喜欢p.1-创建基于MapView
的自定义视图,覆盖dispatchDraw()
,并在加载新地图时在其中显示临时地图。您是否发现我有同样的问题?我已经在本地下载了磁贴,问题仍然存在,基本上,当我缩放到下一个级别时,谷歌地图会突然从屏幕上移除当前的分幅,并显示空屏幕。之后,需要大约一秒钟的时间在本地加载下一个磁贴并显示它们。这对于用户使用下载的磁贴创建地面覆盖来说是一种烦人的体验。我的磁贴是从本地存储加载的,如果你尝试放大谷歌地图应用程序=>该应用程序会一直放大当前磁贴图像,直到加载下一个缩放磁贴为止。我担心我的问题没有解决方案:(((