0

我在布局中有这段代码:

<FrameLayout>    
        <fragment
            ...
            android:name="com.google.android.gms.maps.SupportMapFragment">
        </fragment>    
</FrameLayout>

但是当我尝试使用绘图缓存时,屏幕截图只有缩放栏(带有 + 和 - 按钮)和左角的文本“Google”。我使用下一个代码来获取图像:

View view = findViewById(R.id.frame);
view.setWillNotCacheDrawing(false);
view.destroyDrawingCache();
view.buildDrawingCache();
view.setDrawingCacheEnabled(true);
routeScreen = Bitmap.createBitmap(view.getDrawingCache());
view.setDrawingCacheEnabled(false);
4

1 回答 1

1

这样做的原因是因为地图是使用 OpenGL 绘制的,而像素数据存储在 GPU 中。

查看 Google Map 的GoogleMap.snapshot()方法以捕获地图的屏幕截图。

于 2016-11-23T19:10:37.633 回答