方法一:    

Picture snapShot = view.capturePicture();


            if (snapShot.getWidth() > 0 && snapShot.getHeight() > 0) {
                Bitmap b = Bitmap.createBitmap(snapShot.getWidth(),
                        snapShot.getHeight(), Bitmap.Config.ARGB_8888);

                Canvas c = new Canvas(b);

                snapShot.draw(c);

               Bitmap newBitmap = zoomBitmap(b, 250, 250);
                historyModel.setSnapshot(newBitmap);


方法二(经过测试,平板竖屏是经常截图失败, 原因是root.getDrawingCache()尺寸超过限制):

View root = activity.getWindow().getDecorView();

    private Bitmap catchScreen(View root) {
        root.setDrawingCacheEnabled(true);
        root.setDrawingCacheBackgroundColor(0);
        root.buildDrawingCache(true);
        Bitmap b = root.getDrawingCache();
        return b;
    }



方法三(成功率高):

            // create snapshot for webview
            View cv = activity.getWindow().getDecorView();
            Bitmap b = Bitmap.createBitmap(cv.getWidth(), cv.getHeight(),
                    Config.ARGB_4444);
            cv.draw(new Canvas(b));



更多相关文章

  1. AndroidStudio3.6.3新版本遇到的坑
  2. android ndk 入门2 - 基本方法实现
  3. [gitbook] Android框架分析系列之Android(安卓)PackageManager
  4. Android开发中Android与网页(JavaScrip)t的交互
  5. Android中获得上下文的静态方法
  6. android 动态壁纸
  7. 全屏
  8. Android(安卓)Material Design之CoordinatorLayout
  9. Android(安卓)打开浏览器的几种方法

随机推荐

  1. Android全屏设置的两种方式
  2. android 中调用接口发送短信
  3. Android(安卓)activity的生命周期
  4. android 读取assets指定文件
  5. Android(安卓)获取包名,版本信息
  6. Android中字体的处理
  7. Android(安卓)实现仿Window7图片预览窗格
  8. Android(安卓)WebView在系统进程中无法使
  9. Android(安卓)多行跑马灯 解决焦点抢占
  10. Android中短信的收发机制 发送短信 接收