android 屏幕截屏源码分享
来源:互联网 发布:大数据 风险管理 编辑:程序博客网 时间:2024/05/01 09:10
package net.canking.shottest; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.Rect; import android.view.View; public class ScreenShot { private static Bitmap takeScreenShot(Activity activity) { // View是你需要截图的View View view = activity.getWindow().getDecorView(); view.setDrawingCacheEnabled(true); view.buildDrawingCache(); Bitmap b1 = view.getDrawingCache(); // 获取状态栏高度 Rect frame = new Rect(); activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(frame); int statusBarHeight = frame.top; // 获取屏幕长和高 int width = activity.getWindowManager().getDefaultDisplay().getWidth(); int height = activity.getWindowManager().getDefaultDisplay() .getHeight(); // 去掉标题栏 Bitmap b = Bitmap.createBitmap(b1, 0, statusBarHeight, width, height - statusBarHeight); view.destroyDrawingCache(); return b; } private static void savePic(Bitmap b, File filePath) { FileOutputStream fos = null; try { fos = new FileOutputStream(filePath); if (null != fos) { b.compress(Bitmap.CompressFormat.PNG, 100, fos); fos.flush(); fos.close(); } } catch (FileNotFoundException e) { // e.printStackTrace(); } catch (IOException e) { // e.printStackTrace(); } } public static void shoot(Activity a, File filePath) { if (filePath == null) { return; } if (!filePath.getParentFile().exists()) { filePath.getParentFile().mkdirs(); } ScreenShot.savePic(ScreenShot.takeScreenShot(a), filePath); } }
4 0
- android 屏幕截屏源码分享
- android 屏幕截屏源码
- Android屏幕适配分享
- Android分享功能源码
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- Android 开发源码分享
- 编译appche http server:
- 8、手机防盗--通过拨号进入手机防盗
- MFC中通过Tooltip类来实现悬浮鼠标显示提示信息
- jfinal拦截器
- 简单的WebService编写与调用
- android 屏幕截屏源码分享
- 10 款优秀的在线 JavaScript 工具推荐
- MATLAB内存管理
- MyEclipse6.5 @Override 时出错误 The method of type must override a superclass method
- centos 安装mysql
- 设计模式之策略模式
- matlab编程入门学习(2)
- about jfinal
- javascript 弹出框