Java Android如何在截图中捕捉阴影
如何在屏幕截图中捕获活动布局中视图的阴影或立面。此代码为视图截图,但此处不显示viewsenter图像描述的阴影Java Android如何在截图中捕捉阴影,java,android,screenshot,shadow,Java,Android,Screenshot,Shadow,如何在屏幕截图中捕获活动布局中视图的阴影或立面。此代码为视图截图,但此处不显示viewsenter图像描述的阴影 View screenView = parentMain; screenView.buildDrawingCache(); screenView.setDrawingCacheEnabled(true); Bitmap bitmap = Bitmap.createBitmap(screenView.getWidth() , screenView.getHeig
View screenView = parentMain;
screenView.buildDrawingCache();
screenView.setDrawingCacheEnabled(true);
Bitmap bitmap = Bitmap.createBitmap(screenView.getWidth() , screenView.getHeight(), Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bitmap);
screenView.layout(0, 0, screenView.getLayoutParams().width, screenView.getLayoutParams().height);
screenView.draw(c);
screenView.setDrawingCacheEnabled(false);
fakeImgView.setImageBitmap(bitmap);
即使我们在活动级别添加硬件加速,它也不会提供任何效果
赞赏任何替代方法
结果
试试这个
CardView card = (CardView) findViewById(R.id.card);
现在只需将卡传递给CaptureScreen shot()。它返回位图并保存该位图saveImage()
您可以传递任何视图,如RelativeLayout、LinearLayout等。任何视图都可以传递到captureScreenShot()
最后像这样调用这个函数
saveImage(captureScreenShot(card));
File file = new File(“yourImageFilePath”);
if(file.exists())
{
yourImageView.setImageURI(Uri.fromFile(file));
}
现在像这样设置您的图像
saveImage(captureScreenShot(card));
File file = new File(“yourImageFilePath”);
if(file.exists())
{
yourImageView.setImageURI(Uri.fromFile(file));
}
注意:如果setImageURI()不工作,则可以使用以下代码
File file = new File(“yourImageFilePath”);
if(file.exists())
{
Bitmap bitmap = BitmapFactory.decodeFile(file.toString());
yourImageView.setImageBitmap(bitmap);
}
尝试将您的图像保存在存储目录中,然后将该图像设置为图像视图。请参阅我的答案,先生,希望这对您有所帮助。@commonware请帮助找到解决方案?