Android Activity中加入View后进行后台截屏截图

来源:互联网 发布:电信的网络尖兵限制了 编辑:程序博客网 时间:2024/06/06 07:00

后台截图步骤:

1.通过Activity的findViewById方法,传入系统固定资源android.R.id.content获取Windows最顶层的ViewGroup。

2.获该ViewGroup的第一个子previousView暂存起来,以便截图后恢复现场。

3.调用ViewGroup的removeAllViews移除所有view后,再调用addView把要截图的View加载进来。

4.通过activity.getWindow.getDectorView方法获取dectorView。

5.使能dectorView缓存绘制开关打开。通过调用setDrawingCacheEnable方法来打开。

6.依次调用dectorView的mesure和layout以及buildDrawingCache方法来创建缓存。

7.通过getDrawingCache获取缓存的Bitmap,截图成功。

8.恢复现场:调用dectorView的setDrawingCacheEnable关闭缓存开关,调用dectorView的destroyDrawingCache清除缓存信息。将previousView重新添加到ViewGroup中恢复现场。

0 0
原创粉丝点击