-----------截屏方法

View Code
private Bitmap shot() {      View views = getWindow().getDecorView();    views.buildDrawingCache();    // 获取状态栏高度    Rect frames = new Rect();    views.getWindowVisibleDisplayFrame(frames);    int statusBarHeights = frames.top;    Display display = getWindowManager().getDefaultDisplay();    int widths = display.getWidth();    int heights = display.getHeight();    //第一种方式            views.layout(0, statusBarHeights,widths, heights - statusBarHeights);    views.setDrawingCacheEnabled(true);//允许当前窗口保存缓存信息 ,两种方式都需要加上      Bitmap bmp = Bitmap.createBitmap(views.getDrawingCache());    //第二种方式            // 1、source 位图  2、X x坐标的第一个像素  3、Y y坐标的第一个像素  4、宽度的像素在每一行  5、高度的行数    //Bitmap bmp = Bitmap.createBitmap(views.getDrawingCache(), 0, statusBarHeights,widths, heights - statusBarHeights);    return bmp;  }

---------保存到SD卡方法

View Code
            try {                String status = Environment.getExternalStorageState();                // 判斷SD卡是否存在                if (status.equals(Environment.MEDIA_MOUNTED)) {                    File destDir = new File("文件夹名");                                        if (!destDir.exists()) {                        // 创建文件夾                        destDir.mkdirs();                    }                    File file = new File("图片名");                    // 判断文件夾是否存在                    if (file.exists()) {                        String pic_path ="文件夹名" +"图片名"+".png";                        FileOutputStream out = new FileOutputStream(pic_path);                        shot().compress(Bitmap.CompressFormat.PNG,100, out);                        out.flush();                        out.close();                    }                }            } catch (FileNotFoundException e) {                e.printStackTrace();            } catch (IOException e) {                e.printStackTrace();            }

-------把Bitmap转为Drawable 放进imageView中

View Code
        //Bitmap-->Drawable                  BitmapDrawable bd=new BitmapDrawable(shot());                  imageView.setBackgroundDrawable(bd);                  imageView.setImageBitmap(shot()); 

更多相关文章

  1. android 通过编程方式 卸载sdcard
  2. Android快捷方式的创建与shortcut是否已创建的判断
  3. android中进行https连接的方式(源码)
  4. android 用post方式上传图片到服务器
  5. Android添加快捷方式到手机桌面
  6. Android实现简单的注册登录 POST方式提交数据 基于AndroidStudio
  7. Android中Activity的四种启动方式
  8. 在android中button响应的两种方式
  9. Android注册广播两种方式的区别

随机推荐

  1. android studio 增加依赖
  2. android 解决键盘弹出后输入框被下方控件
  3. Android(安卓)APK反编译方法(可以获取APK
  4. Android(安卓)日志获取总结
  5. [Android]度量单位dip介绍
  6. android 4.4 Settings分析
  7. android SQLite使用SQLiteOpenHelper类对
  8. 深夜扒一扒Android的发展史
  9. Android中Service和Activity相互通信示例
  10. Android音频和震动的基本实现