获取图片:

/** * 屏幕截屏 * @param activity * @return */public static Bitmap getShot(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;}

保存图片:

public static void saveImage(Bitmap bmp, String dirName, String fileName) throws IOException {    // 判断sd卡是否存在    if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {        String storagePath = Environment.getExternalStorageDirectory().toString();        File dir = new File(storagePath, dirName);        // 判断文件夹是否存在,不存在则创建        if(!dir.exists()){            dir.mkdir();        }        File file = new File(dir.getPath(), fileName);        // 判断文件是否存在,不存在则创建        if (!file.exists()) {            file.createNewFile();        }        FileOutputStream fos = null;        try {            fos = new FileOutputStream(file);            if (fos != null) {                // 第一参数是图片格式,第二个是图片质量,第三个是输出流                bmp.compress(Bitmap.CompressFormat.PNG, 100, fos);                // 用完关闭                fos.flush();                fos.close();            }        } catch (FileNotFoundException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        }    }}

参考:http://my.oschina.net/neil173352/blog/308353

更多相关文章

  1. Android 中获取屏幕长度及宽度
  2. Android中bitmap图片透明度的处理(以撕美女衣服为例)
  3. android自定义progressbar图片大小自适应
  4. Java乔晓松-android中上传图片到服务器Tomcat(Struts2)
  5. Android 图片Bitmap的剪切
  6. 【Android 开源系列】之缓存框架
  7. Android 图片预览模仿朋友圈查看图片效果放大图片,左右滑动 - tra
  8. android 实现屏幕截图

随机推荐

  1. Android应用程序进程启动过程的源代码分
  2. Android(安卓)应用(中英文)切换
  3. Android(安卓)Binder之native层解析
  4. Android高级开发第三讲--应用程序基础
  5. Android(安卓)OpenSL介绍 并实现播放PCM
  6. Android应用程序注册广播接收器(registerR
  7. Android消息机制全面解析
  8. Android下uid与多用户释疑(一)
  9. android 触摸事件、点击事件的区别
  10. Android图表