没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Android截屏 Android截屏的原理:获取具体需要截屏的区域的Bitmap,然后绘制在画布上,保存为图片后进行分享或者其它用途 一、Activity截屏 1、截Activity界面(包含空白的状态栏) /** * 根据指定的Activity截图(带空白的状态栏) * * @param context 要截图的Activity * @return Bitmap */ public static Bitmap shotActivity(Activity context) { View view = context.getWindow(
资源推荐
资源详情
资源评论
Android截屏截图的几种方法总结截屏截图的几种方法总结
Android截屏截屏
Android截屏的原理:获取具体需要截屏的区域的Bitmap,然后绘制在画布上,保存为图片后进行分享或者其它用途
一、一、Activity截屏截屏
1、截Activity界面(包含空白的状态栏)
/**
* 根据指定的Activity截图(带空白的状态栏)
*
* @param context 要截图的Activity
* @return Bitmap
*/
public static Bitmap shotActivity(Activity context) {
View view = context.getWindow().getDecorView();
view.setDrawingCacheEnabled(true);
view.buildDrawingCache();
Bitmap bitmap = Bitmap.createBitmap(view.getDrawingCache(), 0, 0, view.getMeasuredWidth(), view.getMeasuredHeight());
view.setDrawingCacheEnabled(false);
view.destroyDrawingCache();
return bitmap;
}
2、截、截Activity界面(去除状态栏)界面(去除状态栏)
/**
* 根据指定的Activity截图(去除状态栏)
*
* @param activity 要截图的Activity
* @return Bitmap
*/
public Bitmap shotActivityNoStatusBar(Activity activity) {
// 获取windows中最顶层的view
View view = activity.getWindow().getDecorView();
view.buildDrawingCache();
// 获取状态栏高度
Rect rect = new Rect();
view.getWindowVisibleDisplayFrame(rect);
int statusBarHeights = rect.top;
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;
}
二、二、View截屏截屏
/**
* 根据指定的view截图
*
* @param v 要截图的view
* @return Bitmap
*/
资源评论
weixin_38733787
- 粉丝: 2
- 资源: 842
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功