如何使用 Textureview 作为 cameraX 的预览 [Java]

问题描述

我遵循了 cameraX 上的指南,这些指南都使用 PreviewView 来显示相机输出 preview.setSurfaceProvider(PreviewView.createSurfaceProvider());

如何设置预览以使用纹理视图而不是预览视图

解决方法

您可以指定在 SurfaceView 和 TextureView 之间的 PreviewView 中使用哪个视图。 在设置surfaceProvider之前,先设置实现方式

previewView.implementationMode = PreviewView.ImplementationMode.COMPATIBLE

这里的 previewView 是 PreviewView 的 XML id。 PreviewView.ImplementationMode.COMPATIBLE 用于 TextureView。设置后,PreviewView 将使用 TextureView 来显示 Camera。

SurfaceView 的实现方式是PreviewView.ImplementationMode.COMPATIBLE

这与

兼容
androidx.camera:camera-view:1.0.0-alpha22

对于这个版本,你需要改变

preview.setSurfaceProvider(PreviewView.createSurfaceProvider());

到 preview.setSurfaceProvider(previewView.getSurfaceProvider)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...