读书人

获取surfaceview的canvas,该如何解决

发布时间: 2013-03-14 10:33:15 作者: rapoo

获取surfaceview的canvas
我要把一个surfaceview的内容保存成图片应该怎么做
surfaceholder.lockcanvas具体有什么功能
必须在实现runable接口的线程中调用吗
[解决办法]
如果没有什么遮挡,可以先截屏,然后再截成你想要的图
surfaceholder.lockcanvas 锁定画布,做变化后,提交 unlockCanvasAndPost

必须在实现runable接口的线程中调用吗:不是必须的,只是一般用surfaceholder,都是通过线程定时更新的
[解决办法]
在activity中
View view = getWindow().getDecorView();
Display display = this.getWindowManager().getDefaultDisplay();
view.layout(0, 0, display.getWidth(), display.getHeight());
view.setDrawingCacheEnabled(true);//允许当前窗口保存缓存信息,这样getDrawingCache()方法才会返回一个Bitmap
Bitmap bmp = Bitmap.createBitmap(view.getDrawingCache());

读书人网 >Android

热点推荐