Android 查看后如何从曲面中清除预览帧

Android 查看后如何从曲面中清除预览帧,android,android-3.0-honeycomb,android-camera,Android,Android 3.0 Honeycomb,Android Camera,当我在相机上调用StopReview时,最后一帧仍保留在surfaceview上。我如何清除它,例如黑色 我试过了setBackGroundColor和setVisibility,但都没有效果。我假设是因为它是PUSH_BUFFER类型 谢谢您尝试过以下方法吗? 在曲面视图上,使用以下内容覆盖onDraw: @Override public void draw(Canvas canvas) { super.draw(canvas); if (m_stopped) // Set it

当我在相机上调用StopReview时,最后一帧仍保留在surfaceview上。我如何清除它,例如黑色

我试过了setBackGroundColor和setVisibility,但都没有效果。我假设是因为它是PUSH_BUFFER类型

谢谢

您尝试过以下方法吗? 在曲面视图上,使用以下内容覆盖onDraw:

@Override
public void draw(Canvas canvas) {
   super.draw(canvas);

   if (m_stopped) // Set it to true when you stop the preview.
   {
       canvas.drawColor(Color.BLACK);
   }
}
您可能需要在停止预览后调用invalidate(),以确保调用onDraw。

谢谢Lior

不幸的是,在使用setBackGroundColor时,我犯了一个小学生错误,并假设0是黑色的

实际上已经阅读了文档,这是透明的,所以我现在使用Color.BLACK,它的工作原理与预期一致