监听 TextureView 第一帧渲染
Listen for TextureView first frame render
我正在实现用于扫描二维码的相机预览。使用 TextureView 渲染预览。
当相机和所有东西都在初始化时,有一个黑屏,所以我想显示一个占位符,直到相机开始在视图上渲染。我使用 onSurfaceTextureAvailable
要求相机开始预览,但在要求相机开始预览后,您再次看到黑屏的时间很短,因此我需要一种方法来了解预览何时真正开始。
这可能吗?
谢谢。
试试 onSurfaceTextureUpdated 回调:
@Override
public void onSurfaceTextureUpdated(@NonNull final SurfaceTexture surface) {
if (!this.isRendering) {
this.isRendering = true;
... Remove the place holder
}
}
确保使用示例中的标志,因为如果实现是针对相机应用程序,那么回调将在每个相机帧上不断触发,因此使用标志以避免调用占位符的删除代码不断 none-stop.
我正在实现用于扫描二维码的相机预览。使用 TextureView 渲染预览。
当相机和所有东西都在初始化时,有一个黑屏,所以我想显示一个占位符,直到相机开始在视图上渲染。我使用 onSurfaceTextureAvailable
要求相机开始预览,但在要求相机开始预览后,您再次看到黑屏的时间很短,因此我需要一种方法来了解预览何时真正开始。
这可能吗?
谢谢。
试试 onSurfaceTextureUpdated 回调:
@Override
public void onSurfaceTextureUpdated(@NonNull final SurfaceTexture surface) {
if (!this.isRendering) {
this.isRendering = true;
... Remove the place holder
}
}
确保使用示例中的标志,因为如果实现是针对相机应用程序,那么回调将在每个相机帧上不断触发,因此使用标志以避免调用占位符的删除代码不断 none-stop.