Реализую беговой трекер. Мой пользовательский интерфейс состоит из MapBox mapView и дисплея, который содержит несколько макетов, составляющих время, расстояние и т. Д. c. MapView занимает верхнюю половину родительского макета, а отображение занимает нижнюю половину. После запуска я хочу сделать снимок экрана и сохранить img как растровое изображение. Однако, когда я использую обычный способ getDrawingCache()
, часть img, которая является mapView, становится черным ящиком. Кто-нибудь знает, как решить эту проблему?
Я также пробовал использовать Canvas, но он не работал.
Ниже приведен код для получения BitMap
view.setDrawingCacheEnabled(true);
view.buildDrawingCache(true);
Bitmap bitmap = Bitmap.createBitmap(view.getDrawingCache());
view.setDrawingCacheEnabled(false);
![Image of BitMap (MapView is black)](https://i.stack.imgur.com/Xhls9.png)