android 截屏 代码,android – 代码中的屏幕截图

我需要捕获当前屏幕的屏幕截图,所以我采用了下面的代码

protected void onPause() {

// TODO Auto-generated method stub

super.onPause();

LinearLayout v = (LinearLayout) findViewById(R.id.mainLayout);

v.setDrawingCacheEnabled(true);

// this is the important code :)

// Without it the view will have a

// dimension of 0,0 and the bitmap will

// be null

v.measure(MeasureSpec.makeMeasureSpec(0,MeasureSpec.UNSPECIFIED),MeasureSpec.makeMeasureSpec(0,MeasureSpec.UNSPECIFIED));

//v.layout(0,v.getMeasuredWidth(),v.getMeasuredHeight());

v.layout(0,v.getWidth(),v.getHeight());

v.buildDrawingCache(true);

Bitmap bm = Bitmap.createBitmap(v.getDrawingCache());

v.setDrawingCacheEnabled(false); //

if (bm != null) {

try {

String path = Environment.getExternalStorageDirectory()

.toString();

OutputStream fOut = null;

File file = new File(path,"screentest.jpg");

fOut = new FileOutputStream(file);

bm.compress(Bitmap.CompressFormat.JPEG,85,fOut);

fOut.flush();

fOut.close();

Log.e("ImagePath","Image Path : "

+ MediaStore.Images.Media.insertImage(

getContentResolver(),file.getAbsolutePath(),file.getName(),file.getName()));

} catch (Exception e) {

e.printStackTrace();

}

}

}

这段代码对我来说很好,但我需要在屏幕加载完成后捕获屏幕.

我也尝试了onPostCReate(),但一切都是徒劳的..

我也尝试在onPause()方法中调用代码,但由于动画,屏幕从右侧和底部部分进行了一些调整…所以我甚至不能去…

现在轮到你分享你的专业知识了..

任何建议都非常感谢!!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值