首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

怎么给Scrollview里内容截屏并生成bit地图,注意:Scrollview里面内容较多有滚动了

2012-09-29 
如何给Scrollview里内容截屏并生成bitmap,注意:Scrollview里面内容较多有滚动了使用for循环递归累加其内部

如何给Scrollview里内容截屏并生成bitmap,注意:Scrollview里面内容较多有滚动了

使用for循环递归累加其内部的子控件的高度:

private ScrollView scrollView;scrollView = (ScrollView) findViewById(R.id.scrollview);int h = 0;for (int i = 0; i < scrollView.getChildCount(); i++) {h += scrollView.getChildAt(i).getHeight();}Bitmap bitmap = Bitmap.createBitmap(scrollView.getWidth(), h,Bitmap.Config.ARGB_8888);// Bitmap bitmap = scrollView.getDrawingCache(true);final Canvas c = new Canvas(bitmap);scrollView.draw(c);ByteArrayOutputStream stream = new ByteArrayOutputStream();bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);final byte[] picture = stream.toByteArray();if (bitmap != null && !bitmap.isRecycled()) {bitmap = null;// 把原来的 bitmap.recycle().改成这个}

代码如上即可给Scrollview进行截屏并转换为bitmap,和byte[]数组,你可以根据自己需要选择使用·········

?

热点排行