Android 拍摄一张透明图像的屏幕截图

Android 拍摄一张透明图像的屏幕截图,android,screenshot,Android,Screenshot,我有一个主布局和一个线性布局,上面有一个透明的图像作为背景。当我试图捕获屏幕截图时,抛出下面的代码,它只返回透明图像,但我想要主布局图像,因为我使用llSplitView作为帧 llSplitPic.setDrawingCacheEnabled(true); llSplitPic.buildDrawingCache(); llSplitPic.setDrawingCacheQuality(View.DRAWING_CACHE_QUALITY_HIGH); Bitmap bmp = llSplit

我有一个主布局和一个线性布局,上面有一个透明的图像作为背景。当我试图捕获屏幕截图时,抛出下面的代码,它只返回透明图像,但我想要主布局图像,因为我使用llSplitView作为帧

llSplitPic.setDrawingCacheEnabled(true);
llSplitPic.buildDrawingCache();
llSplitPic.setDrawingCacheQuality(View.DRAWING_CACHE_QUALITY_HIGH);
Bitmap bmp = llSplitPic.getDrawingCache();
试试这个方法-

Bitmap file = takeSnapshot(ParentLayout);

   Bitmap takeSnapshot(View v)
    {
        Bitmap b = Bitmap.createBitmap(v.getWidth(), v.getHeight(), Bitmap.Config.ARGB_8888);
        Canvas c = new Canvas(b);
        v.draw(c);
        return b;
    }

它给出了视图的屏幕截图,但我有一个透明视图,并且希望如果我拍摄透明部分的屏幕截图,那么应该捕获透明图像背景中的背景图像,您必须在某些布局中具有该视图。是吗?是的,视图在相同的布局结构中是这样的,然后将ID设置为父布局(即您的相对布局),在java代码中引用该布局。并在此方法中传递该相对布局对象的对象。我不想拍摄全屏的屏幕快照