博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android ScrollView截图和图片保存到相册的方式
阅读量:7079 次
发布时间:2019-06-28

本文共 1801 字,大约阅读时间需要 6 分钟。

  hot3.png

1.1首先来看你一种截取屏幕,这种代码有缺陷,只能截取一次

 

getWindow().getDecorView().setDrawingCacheEnabled(true);Bitmap screenBitmap = getWindow().getDecorView().getDrawingCache();img_display.setImageBitmap(screenBitmap);

 

 

1.2下面的是每次都可以截取到(只能截取到可见屏幕部分,不可见部分无法截取)

 

View decorView = getWindow().getDecorView();Bitmap screenBitmap = Bitmap.createBitmap(decorView.getWidth(), decorView.getHeight(), Config.ARGB_8888);Canvas canvas = new Canvas(screenBitmap);decorView.draw(canvas);

 

 

1.3截取可见与不可见屏幕部分(除ListView和GridView,只能截取ScrollView和HorizontalScrollView),原因是ListView和GridView的适配机制是不断的remove和add

注意:这里截取的是View而不是屏幕

ScrollView和HorizontalScrollView必须只有一个子布局,也就是说,他的子布局的来作为容器,它来作为滚动控件

View decorView = getWindow().getDecorView();ScrollView sv = (ScrollView)findViewById(R.id.scrollbox);LinearLayout panel= (LinearLayout)sv.findViewById(R.id.scrollbox_panel);int sumHeight = 0;for(int i=0;i

 

 

图片保存是使用ContentProvider提供的接口,下面是相册的Uri定位

Images.Media.EXTERNAL_CONTENT_URI

最简单的保存方式

//返回值是 Uri 协议字符串 String uriString = MediaStore.Images.Media.insertImage(context.getContentResolver(), bmp, “截图-20141121”, “这是我的截图”);

 

/** //保存到某路径下        File dir = new File("/sdcard/t/");        if (!dir.exists()) {            dir.mkdirs();        }        final String photoUrl = "/sdcard/t/" + System.currentTimeMillis() + ".png";//换成自己的图片保存路径        final File file = new File(photoUrl);        try {            FileOutputStream out = new FileOutputStream(file);            bm.compress(Bitmap.CompressFormat.JPEG, 100, out);            out.flush();            out.close();        } catch (FileNotFoundException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } **/

 

转载于:https://my.oschina.net/huqiji/blog/800556

你可能感兴趣的文章
搭建Hadoop2.7.3+Hive2.1.1及MySQL(配置Hive)(三)
查看>>
O`Reilly FreeBook:数据湖构架 简介
查看>>
FastDFS集群tracker实现负载均衡
查看>>
12日志文件分析
查看>>
排序算法之冒泡排序
查看>>
Apache和php的关系
查看>>
reset master和reset slave命令解析和区别
查看>>
【转】web.xml标签
查看>>
如何诊断服务器异常行为
查看>>
python3 django-admin 初始化后台管理项目(mysql)
查看>>
我的友情链接
查看>>
利用ZRM(lvm+binlog方式)进行数据库备份及还原
查看>>
Xenserver7宿主机使用yum安装zabbix客户端
查看>>
HLSL学习实践记录: RenderMonkey实现(一):显示出模型和贴图
查看>>
Oracle Study之--Oracle 11gR2 RAC crs启动故障
查看>>
LeetCode:Ugly Number II - 丑数2:找出第n个丑数
查看>>
变形金刚动态壁纸源码
查看>>
cocos2dx平台判断
查看>>
JS继承
查看>>
Java类的实例化过程
查看>>