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;
}
相關文章
相關標籤/搜索