现在很多软件能对图片进行处理比如美图之类的工具,等我们把图片编辑完成后就会重新生成一张图片,然后我们就可以把图片保存到我们想要的位置,再把图片插入到系统媒体库中去,这样就能及时的在图片库中浏览。生成图片代码如下:
public Bitmap loadBitmapFromView(View v) {
Log.i("jjf", "v高:" + v.getHeight());
Bitmap b = Bitmap.createBitmap(v.getWidth(), v.getHeight(),
Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(b);
// v.layout(0, 0, v.getWidth(), v.getHeight());
v.draw(c);
saveBitmap(b, "/DecorationOutputs/", "image_");
return b;
}
保存图片代码如下:
// 保存图片
private void saveBitmap(Bitmap bitmap, String dir, String baseName) {
try {
File sdcard = Environment.getExternalStorageDirectory();
File pictureDir = new File(sdcard, dir);
pictureDir.mkdirs();
File f = null;
String name = baseName + System.currentTimeMillis() + ".jpg";
savedFileName = name;
f = new File(pictureDir, name);
/*
* if (!f.exists()) { break; }
*/
String name1 = f.getAbsolutePath();
FileOutputStream fos = new FileOutputStream(name1);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
fos.flush();
fos.close();
// 插入到,媒体库
sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE)
.setData(Uri.fromFile(new File(name1))));
} catch (Exception e) {
} finally {
/*
* if (fos != null) { fos.close(); }
*/
}
}
通过广播把我们生成的图片插入到媒体库中去。