如何以编程方式获取根视图的屏幕截图并将其设置为android中该布局的背景?

时间:2012-08-24 09:46:13

标签: android bitmap screenshot

我需要获取活动主要布局的屏幕截图,然后再将其设置为该布局的背景。我正在使用以下代码。

Bitmap bitmap;
       View v1 = getWindow().getDecorView().findViewById(android.R.id.content);
       v1.setDrawingCacheEnabled(true);
       bitmap = Bitmap.createBitmap(v1.getDrawingCache());
       v1.setDrawingCacheEnabled(false);

以下代码用于将其设置为背景

Drawable dr=new BitmapDrawable(getResources(), bitmap);
                        mLinearLayout.setBackgroundDrawable(dr);

但是当我设置它时,图像向下滑动。我的意思是每次拍摄截图和后退都会缩小。谁能告诉我这个问题。

请提供一些示例代码。

提前致谢

1 个答案:

答案 0 :(得分:1)

有一点变化使它成为现实。

Bitmap bitmap;
       View v1 = RootView;
       v1.setDrawingCacheEnabled(true);
       bitmap = Bitmap.createBitmap(v1.getDrawingCache());
       v1.setDrawingCacheEnabled(false);