8

我一直在努力使用 Google Maps v2 和自定义图块。它工作正常,但我们经常在谷歌地图中看到黑色方块,它们非常具有破坏性。

我可以通过这样做非常简单地重现问题:

mapFragment = new MapFragment() {
@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
        mapFragment.getMap().setMapType(GoogleMap.MAP_TYPE_NONE);
    }
};

FragmentTransaction trans = getFragmentManager().beginTransaction();
trans.replace(R.id.map, mapFragment);
trans.commit();

我使用此代码和带有框架布局的标准活动。如果我在 Nexus4 上将背景放大到足够远,它就会变黑。如果我在上面放置瓷砖,我会在放大时看到黑色闪烁

我已经看到了大量有关如何解决此问题的解决方法,但它们似乎都不起作用。它似乎只发生在某些缩放级别上,但我 (A) 需要这些缩放级别,并且 (B) 似乎无法限制缩放(无论如何都没有构建自定义捏合来缩放实现)。

我已经对自定义磁贴提供商进行了一些测试。使用MAP_TYPE_NONE,一个只返回 1 个蓝色像素的切片提供程序和我的法线贴图切片提供程序,我可以直观地看到地图从黑色 -> 蓝色 -> 我的地图变化。即使我的自定义蓝色瓷砖提供程序立即返回 1px 蓝色瓷砖。

4

1 回答 1

1

这个问题,以及移动地图视图时出现的拖尾黑色矩形,是几个月前报告的,刚刚从谷歌那里得到了修复。

不幸的是,此修复仅限于兼容设备,因为它是一个全新的修复,可能会在“已修复”设备上引入新错误,并在其他设备上保留旧错误(有点不同)。

我认为没有必要在此处复制来自 Google 错误跟踪器的对话,因为它是完全公开的: https ://code.google.com/p/gmaps-api-issues/issues/detail?id=4659

于 2013-08-29T17:52:51.537 回答