#java #android-camerax #textureview
Вопрос:
Я следовал руководствам по CameraX, которые все используют предварительный просмотр для отображения вывода камеры с помощью preview.setSurfaceProvider(PreviewView.createSurfaceProvider());
Как настроить предварительный просмотр для использования textureview вместо предварительного просмотра
Комментарии:
1. Могу я спросить, зачем вам нужно использовать TextureView? Предварительный просмотр использует TextureView внутренне. Правильное отображение предварительного просмотра не является тривиальным делом. Если вы хотите сделать это самостоятельно, вы можете взглянуть на исходный код PreviewView о том, как он обрабатывается. github.com/androidx/androidx/blob/androidx-main/camera/…
Ответ №1:
Вы можете указать, какое представление использовать в режиме предварительного просмотра между SurfaceView и TextureView. Перед настройкой surfaceProvider установите режим реализации
previewView.implementationMode = PreviewView.ImplementationMode.COMPATIBLE
Здесь previewView-это XML — идентификатор PreviewView. PreviewView.ImplementationMode.COMPATIBLE
это для TextureView. После установки этого параметра предварительный просмотр будет использовать TextureView для отображения камеры.
Режим реализации для SurfaceView-это PreviewView.ImplementationMode.PERFORMANCE
Это совместимо с
androidx.camera:camera-view:1.0.0-alpha22