android 保存当前屏幕或者view为图片bitmap

转载 2013年12月03日 11:36:20

转自:http://blog.csdn.net/arui319/article/details/9273563

 

public class ScreenShot {

	public static Bitmap takeScreenShot(Activity activity) {
		// View是你需要截图的ViewView view = activity.getWindow().getDecorView();
  	view.setDrawingCacheEnabled(true);
  	view.buildDrawingCache();
  	Bitmap b1= view.getDrawingCache();// 获取状态栏高度
  	Rect frame = new Rect();
  	activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);
  	int statusBarHeight = frame.top;// 获取屏幕长和高
  	int width = activity.getWindowManager().getDefaultDisplay().getWidth();
  	int height =  activity.getWindowManager().getDefaultDisplay()
    	.getHeight();// 去掉标题栏
  	Bitmap b = Bitmap.createBitmap(b1, 0, statusBarHeight, width, height
    	- statusBarHeight);view.destroyDrawingCache();
  	return b;
 	}
	<span style="color:#ff0000;">//新增方法</span>
	public static Bitmap takeViewShot(View view) {
  	// View是你需要截图的View
 	 view.setDrawingCacheEnabled(true);view.buildDrawingCache();
  	Bitmap b1 = view.getDrawingCache();// 获取View长和高
  	int width = view.getWidth();
  	int height = view.getHeight();Bitmap b = Bitmap.createBitmap(b1, 0, 0, width, height);
  	view.destroyDrawingCache();
  	return b;}private static void savePic(Bitmap b, File filePath) {
  	FileOutputStream fos = null;try {
   	fos = new FileOutputStream(filePath);
   	if (null != fos) {b.compress(Bitmap.CompressFormat.PNG, 100, fos);
    		fos.flush();
    		fos.close();}
  	} catch (FileNotFoundException e) {
  	} catch (IOException e) {
  	}}public static void shoot(Activity a, File filePath) {
  	if (filePath == null) {
   		return;}
  	if (!filePath.getParentFile().exists()) {
   		filePath.getParentFile().mkdirs();
  	}	ScreenShot.savePic(ScreenShot.takeScreenShot(a), filePath);
 	}}

 

 

[Android] 一个将当前屏幕保存为图片文件的类(简单说就是抓屏)

现在无论是应用,还是游戏中,都经常会有分享的功能。分享,不仅要分享文字,也要分享应用或者游戏的屏幕截图,这样才能做到图文并茂,吸引到更多的用户。想要做图片的分享功能,首先就需要抓屏,将当前屏幕保存为一...
  • arui319
  • arui319
  • 2013年07月08日 16:53
  • 4816

关于View转化成bitmap保存成图片

产品今天说项目分享时要分享出一张  封面图片 + 几行文字 + 二维码图片 的图片。 思索了一下 封面图片和二维码图片让后台给接口得到地址, 主要还是找个方式得到一个包含这些内容的图片。于是就想能不...
  • a450479378
  • a450479378
  • 2016年11月08日 14:24
  • 3891

将View的内容映射成Bitmap转图片导出

将view映射到一个bitmap中,稍加改进可以用于一些截图工具或者截图软件(QQ截图之类),例子写的不够完善,不过很有些学习的意义内容大致如下: 在Android中自有获取view中的cac...
  • jianpengxuexikaifa
  • jianpengxuexikaifa
  • 2014年03月12日 14:35
  • 7818

Android保存Bitmap到本地图库

原文->http://stormzhang.github.io/android/2014/07/24/android-save-image-to-gallery/ 最近有些用户反映保存图片之后在...
  • z1246300949
  • z1246300949
  • 2016年02月17日 16:51
  • 12332

Android 截取View,获取View的Bitmap的方法

需求 用户在一个Layout中编辑文字和图片。当用户点击保存按钮时,需要将layout里的所有view以一张图片的形式保存并显示。 这篇文章主要说的是如何获取View的Bitmap。bitmap的保存...
  • c15522627353
  • c15522627353
  • 2017年01月11日 12:00
  • 1980

android自定义View——Bitmap使用详解

先看一个效果图 本节课程实现完成右图效果(三步)以及保存涂鸦过的图片步骤【1】将背景Bitmap图片画到底层canvas上 bitmapBackground = BitmapFactory.deco...
  • TaooLee
  • TaooLee
  • 2015年09月18日 23:02
  • 3366

Android从view得到bitmap及bitmap叠加和保存

从view得到bitmap: private Bitmap getBitmapFromView(View view) { Bitmap bitmap = null; try { in...
  • wuzoujing
  • wuzoujing
  • 2013年05月13日 17:24
  • 6981

Android—将Bitmap图片保存到SD卡目录下或者指定目录

直接上代码就不废话啦 一:保存到SD卡下 File file = new File(Environment.getExternalStorageDirectory(), System.curren...
  • gjy211
  • gjy211
  • 2016年03月13日 00:17
  • 11022

Android 保存bitmap到相册

安卓原生的保存相册方法可以用但是可调参数很少,对三星这样的手机支持不好,图片的创建时间一般为1970.1.1,可以通过复写android原生的方法来添加相关参数,比如照片创建时间和gps位置信息什么的...
  • lvshaorong
  • lvshaorong
  • 2015年12月31日 13:34
  • 1663

Android保存Bitmap图片到指定文件夹

在内存中先读取到
  • u014076894
  • u014076894
  • 2014年09月28日 21:29
  • 1666
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android 保存当前屏幕或者view为图片bitmap
举报原因:
原因补充:

(最多只允许输入30个字)