cameraX的setOnPreviewOutputUpdateListener没有了,改成什么了?
时间: 2024-02-09 07:10:42 浏览: 44
在CameraX 1.0.0版本中,`setOnPreviewOutputUpdateListener`被移除了。相应的功能现在可以通过`Preview.OnPreviewOutputUpdateListener`接口来实现。你可以通过以下步骤来注册`OnPreviewOutputUpdateListener`监听器:
1. 创建一个`Preview`实例。
2. 使用`Preview.Builder`设置所需的预览配置和目标输出。
3. 使用`Preview.setOnPreviewOutputUpdateListener`方法注册监听器。
下面是一个示例代码:
```kotlin
val previewConfig = PreviewConfig.Builder().apply {
setTargetAspectRatio(AspectRatio.RATIO_16_9)
}.build()
val preview = Preview(previewConfig)
preview.setOnPreviewOutputUpdateListener { previewOutput ->
// 处理新的预览输出
}
val camera = cameraProvider.bindToLifecycle(this, cameraSelector, preview)
```
在这个示例中,我们创建了一个`Preview`实例,并使用`PreviewConfig`设置了目标宽高比。然后,我们注册了一个`OnPreviewOutputUpdateListener`监听器,以在每次预览输出更新时收到通知。最后,我们将CameraX绑定到生命周期中,以便在生命周期结束时自动停止预览。