Andriod arcgis保存Mapview为图片的实例代码

时间:2021-05-21

废话不多说了,直接给大家贴代码了,具体代码如下所述:

/*** 把一个View的对象转换成bitmap*/private Bitmap getViewBitmap(MapView v) {v.clearFocus();v.setPressed(false);//能画缓存就返回falseboolean willNotCache = v.willNotCacheDrawing();v.setWillNotCacheDrawing(false);int color = v.getDrawingCacheBackgroundColor();v.setDrawingCacheBackgroundColor(0);if (color != 0) {v.destroyDrawingCache();}v.buildDrawingCache();Bitmap cacheBitmap = null;while(cacheBitmap == null){cacheBitmap = v.getDrawingMapCache(0, 0, v.getWidth(), v.getHeight());}Bitmap bitmap = Bitmap.createBitmap(cacheBitmap);// Restore the viewv.destroyDrawingCache();v.setWillNotCacheDrawing(willNotCache);v.setDrawingCacheBackgroundColor(color);return bitmap;}public void saveMyBitmap(String bitName,Bitmap mBitmap){String FileName=this.getInnerSDCardPath() + "/" + bitName + ".png";ShowMessage(FileName);File f = new File(FileName);try {f.createNewFile();} catch (IOException e) {// TODO Auto-generated catch blockLog.e("在保存"+FileName+"图片时出错:" + e.toString(),"在保存"+FileName+"图片时出错:" + e.toString());}FileOutputStream fOut = null;try {fOut = new FileOutputStream(f);} catch (FileNotFoundException e) {e.printStackTrace();}mBitmap.compress(Bitmap.CompressFormat.PNG, 100, fOut);try {fOut.flush();} catch (IOException e) {e.printStackTrace();}try {fOut.close();} catch (IOException e) {e.printStackTrace();}}//缩小private class ButtonNexitClickListener implements View.OnClickListener {public void onClick(View v) {//ShowMessage("ok1");Bitmap bitmap=getViewBitmap(mapView);//ShowMessage("ok2");saveMyBitmap("yl",bitmap);//ShowMessage("ok3");bitmap.recycle();ShowMessage("保存成功");}}

以上所述是小编给大家介绍的Andriod arcgis保存Mapview为图片的实例代码,希望对大家有所帮助!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章