log4lgb
2017-11-23 17:50
采纳率: 100%
浏览 4.0k

如何将SurfaceView中的Canvas保存为Bitmap?

普通的Canvas可以通过下面的方法来将绘制内容保存为Bitmap

 Bitmap bitmap = new Bitmap(width, height, Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
canvas.drawXXX

但问题是,SurfaceView中Canvas是通过lockCanvas获取的,请问这种情况下,该如何将Canvas保存为Bitmap呢??

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 顽固已死_有事烧纸 2018-02-23 07:27
    已采纳

    你可以自己写个SurfaceView子类 拦截一下onDraw

    如果你是用来摄像头抓图的话直接Camera.setPreviewCallback 能获取图片流

    已采纳该答案
    打赏 评论