android - 在加载 TileOverlay Map API v2 Android 时保持图 block 可见

标签 android dictionary tile

我希望我的 TileOverlay 表现得像真正的 Google map 。当您放大时,在下载新的图 block 之前,该图 block 仍然可见但已像素化。

当前的行为是:当您放大时,图 block 会消失,您会看到丑陋的网格,用户必须等到新图 block 加载完毕。这有点烦人。

这个问题有解决办法吗?

最佳答案

我通过在显示 map 之前“预加载”所有缩放级别来解决这个问题(只是当前状态的复制/粘贴,需要清理):

@UiThread
private void preloadAllZoomLevels(final float zoomLevel) {
    if (zoomLevel == map.getMaxZoomLevel()) {
        map.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(lat, lng), 7));
        mapFragmentContainer.animate().alpha(1f);
        return;
    }
    map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(lat, lng), zoomLevel));

    final float nextZoomLevel = zoomLevel + 1;
    map.setOnMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {
        @Override
        public void onMapLoaded() {
            preloadAllZoomLevels(nextZoomLevel);
        }
    });
}

关于android - 在加载 TileOverlay Map API v2 Android 时保持图 block 可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17911506/

相关文章:

java - 如何使用 Tiled 对象层?

android - 从特定日期获取日期、月份和年份

android - 来自 appWidget 的网络请求

php - Android:如何使用php在mysql中上传图像

python - 如何将字典文本文件读入数据帧

java - 在 Java 中从键值对构建映射

c++ - 在六边形网格上 : selecting tiles within a given radius of a selection point.

Android Dropbox 访问 token

html - 对区域形状图的影响

c# - Windows 10 桌面应用程序中的彩色磁贴