Android 截取当前Activity并转成Bitmap

提供方法:java

public Bitmap shotWindowToBitmap(Activity activity) {
	// 获取windows中最顶层的view
	View view = activity.getWindow().getDecorView();
	view.buildDrawingCache();

	// 获取状态栏高度
	Rect rect = new Rect();
	view.getWindowVisibleDisplayFrame(rect);
	//int statusBarHeights = rect.top;
	int statusBarHeights = 0;
	Display display = activity.getWindowManager().getDefaultDisplay();

	// 获取屏幕宽和高
	int widths = display.getWidth();
	int heights = display.getHeight();

	// 容许当前窗口保存缓存信息
	view.setDrawingCacheEnabled(true);

	// 去掉状态栏
	Bitmap bmp = Bitmap.createBitmap(view.getDrawingCache(), 0, statusBarHeights, widths, heights - statusBarHeights);

	// 销毁缓存信息
	view.destroyDrawingCache();

	return bmp;
}
相关文章
相关标签/搜索