展会信息港展会大全

Android获取webView快照与屏幕截屏的方法
来源:互联网   发布日期:2015-10-02 21:31:31   浏览:5757次  

导读:前段时间做的一个书店项目其阅读模块中用到了WebView + js,今天把WebView这块用到的几个特性记录下。瘀主要用到了webView的快照与屏幕的截屏。部分代码如下:嬀栀琀...

前段时间做的一个书店项目其阅读模块中用到了WebView + js,今天把WebView这块用到的几个特性记录下。

其主要用到了webView的快照与屏幕的截屏。部分代码如下:

[html]

/**

* 截取webView可视区域的截图

* @param webView 前提:WebView要设置webView.setDrawingCacheEnabled(true);

* @return

*/

private Bitmap captureWebViewVisibleSize(WebView webView){

Bitmap bmp = webView.getDrawingCache();

return bmp;

}

/**

* 截取webView可视区域的截图

* @param webView 前提:WebView要设置webView.setDrawingCacheEnabled(true);

* @return

*/

private Bitmap captureWebViewVisibleSize(WebView webView){

Bitmap bmp = webView.getDrawingCache();

return bmp;

}

这个方法只截取屏幕中显示出来部分的webView画面,未显示的部分不会被截龋

[html]

/**

* 截取webView快照(webView加载的整个内容的大小)

* @param webView

* @return

*/

private Bitmap captureWebView(WebView webView){

Picture snapShot = webView.capturePicture();

Bitmap bmp = Bitmap.createBitmap(snapShot.getWidth(),snapShot.getHeight(), Bitmap.Config.ARGB_8888);

Canvas canvas = new Canvas(bmp);

snapShot.draw(canvas);

return bmp;

}

/**

* 截取webView快照(webView加载的整个内容的大小)

* @param webView

* @return

*/www.2cto.com

private Bitmap captureWebView(WebView webView){

Picture snapShot = webView.capturePicture();

Bitmap bmp = Bitmap.createBitmap(snapShot.getWidth(),snapShot.getHeight(), Bitmap.Config.ARGB_8888);

Canvas canvas = new Canvas(bmp);

snapShot.draw(canvas);

return bmp;

}

这个看好与上一个是不同的,他是截取webView的整个页面,未显示的也会被截龋

[html]

/**

* 截屏

* @param context

* @return

*/

private Bitmap captureScreen(Activity context){

View cv = context.getWindow().getDecorView();

Bitmap bmp = Bitmap.createBitmap(cv.getWidth(), cv.getHeight(),Config.ARGB_8888);

Canvas canvas = new Canvas(bmp);

cv.draw(canvas);

return bmp;

/**

* 截屏

* @param context

* @return

*/

private Bitmap captureScreen(Activity context){

View cv = context.getWindow().getDecorView();

Bitmap bmp = Bitmap.createBitmap(cv.getWidth(), cv.getHeight(),Config.ARGB_8888);

Canvas canvas = new Canvas(bmp);

cv.draw(canvas);

return bmp;[html] view plaincopyprint?}

}

这个不用多说大家都明白就是手机屏幕的快照~~

赞助本站

人工智能实验室

相关热词: android开发 教程

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港