/**
* setDrawingCacheEnabled
* 保留我们的绘制副本
* 1.重新测量
* 2.重新布局
* 3.得到我们的DrawingCache
* 4.转换成Bitmap
*/
// ll_content 要保存的view控件
ll_content.setDrawingCacheEnabled(true);
ll_content.measure(
View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED),
View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
ll_content.layout(0, 0, ll_content.getMeasuredWidth(),
ll_content.getMeasuredHeight());
Bitmap mBitmap = ll_content.getDrawingCache();
if (mBitmap != null) {
FileHelper.getInstance().saveBitmapToAlbum(this, mBitmap);
mLodingView.hide();
}
public boolean saveBitmapToAlbum(Context mContext, Bitmap mBitmap) {
//根布局
File rootPath = new File(Environment.getExternalStorageDirectory() + "/Meet/");
if (!rootPath.exists()) {
rootPath.mkdirs();
}
File file = new File(rootPath, System.currentTimeMillis() + ".png");
try {
FileOutputStream out = new FileOutputStream(file);
//自带的保存方法
mBitmap.compress(Bitmap.CompressFormat.PNG, 90, out);
out.flush();
out.close();
Toast.makeText(mContext, "保存成功", Toast.LENGTH_SHORT).show();
updateAlnum(mContext, file.getPath());
return true;
} catch (IOException e) {
LogUtils.i("e:" + e.toString());
Toast.makeText(mContext, "保存失败", Toast.LENGTH_SHORT).show();
}
return false;
}
将view转换成bitmap保存
最新推荐文章于 2022-11-16 11:19:07 发布