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 マップのGoogleMap.snapshot()メソッドをご覧ください。

于 2016-11-23T19:10:37.633 に答える