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 {


// 获取指定Activity的截屏,保存到png文件
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;
System.out.println(statusBarHeight);

//获取屏幕长和高
int width = activity.getWindowManager().getDefaultDisplay().getWidth();
int height = activity.getWindowManager().getDefaultDisplay().getHeight();


//去掉标题栏
//Bitmap b = Bitmap.createBitmap(b1, 0, 25, 320, 455);
Bitmap b = Bitmap.createBitmap(b1, 0, statusBarHeight, width, height - statusBarHeight);
view.destroyDrawingCache();
return b;
}


//保存到sdcard
private static void savePic(Bitmap b,String strFileName){
FileOutputStream fos = null;
try {
fos = new FileOutputStream(strFileName);
if (null != fos)
{
b.compress(Bitmap.CompressFormat.PNG, 90, fos);
fos.flush();
fos.close();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}


//程序入口
public static void shoot(Activity a){
ScreenShot.savePic(ScreenShot.takeScreenShot(a), "sdcard/xx.png");
}
}

更多相关文章

  1. 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像
  2. Android:获取状态栏高度
  3. Android保存图片到图库,Android扫描文件到媒体库,Android保存图片
  4. Android获取手机屏幕的宽高
  5. Android(安卓)获取屏幕尺寸与密度
  6. android studio 日期选择DatePickerDialog取值
  7. android 升级包检测并更新实现
  8. 调用与外部接口
  9. Android开发录音和播放音频的步骤(动态获取权限)

随机推荐

  1. Android(安卓)Socket 与 IOS Socket
  2. android知识小点:文字阴影效果
  3. Android(安卓)Layout xml 中的几个概念
  4. Android(安卓)插件安装 和MyEclipse的Win
  5. 【Android自助餐】Handler消息机制完全解
  6. Android(安卓)学习
  7. 构建Android的交叉编译器、用NDK编译移植
  8. Android(安卓)Manifest标签之manifest,me
  9. 深度解析Android中字体设置
  10. android开发资源合集