From 10ca6f3a37c5e52b67eaab764b0ac3713195233c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E5=8B=A4=E6=B0=91?= Date: Tue, 21 Apr 2026 17:45:54 +0800 Subject: [PATCH] =?UTF-8?q?refactor(ui):=20=E5=B0=86=E7=9B=B8=E6=9C=BA?= =?UTF-8?q?=E9=A2=84=E8=A7=88=E7=BB=84=E4=BB=B6=E4=BB=8E=20TextureView=20?= =?UTF-8?q?=E5=8C=85=E8=A3=85=E5=88=B0=E5=AE=B9=E5=99=A8=E5=B8=83=E5=B1=80?= =?UTF-8?q?=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将 activity_inspection.xml 中的 cameraPreview TextureView 移动到新的 FrameLayout 容器内 - 更新所有对 cameraPreview 的可见性控制以使用 cameraPreviewContainer - 保持相机预览功能逻辑不变,仅调整视图层次结构 - 确保相机预览、缩放文本和提示文本的显示/隐藏行为正常工作 - 维持现有的约束布局配置和尺寸比例设置 --- .../com/nova/brain/glass/ui/InspectionActivity.kt | 12 ++++++------ app/src/main/res/layout/activity_inspection.xml | 12 +++++++++--- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/nova/brain/glass/ui/InspectionActivity.kt b/app/src/main/java/com/nova/brain/glass/ui/InspectionActivity.kt index e5140b4..c5c1212 100644 --- a/app/src/main/java/com/nova/brain/glass/ui/InspectionActivity.kt +++ b/app/src/main/java/com/nova/brain/glass/ui/InspectionActivity.kt @@ -63,7 +63,7 @@ class InspectionActivity : currentZoomLevel = GlassMediaServiceHelper.getZoomLevel().coerceAtLeast(1) maxZoomLevel = GlassMediaServiceHelper.getMaxZoomLevel().coerceAtLeast(1) runOnUiThread { - binding.cameraPreview.visibility = View.VISIBLE + binding.cameraPreviewContainer.visibility = View.VISIBLE binding.zoomText.visibility = View.VISIBLE updateZoomText() binding.hint.text = "预览中,单击预览或语音输入“拍照”完成拍摄" @@ -73,7 +73,7 @@ class InspectionActivity : override fun onCameraClosed() { isPreviewActive = false runOnUiThread { - binding.cameraPreview.visibility = View.GONE + binding.cameraPreviewContainer.visibility = View.GONE binding.zoomText.visibility = View.GONE } } @@ -81,7 +81,7 @@ class InspectionActivity : override fun onError(code: Int, message: String?) { isPreviewActive = false runOnUiThread { - binding.cameraPreview.visibility = View.GONE + binding.cameraPreviewContainer.visibility = View.GONE binding.zoomText.visibility = View.GONE binding.hint.text = "相机预览失败,请重试" (message ?: "相机预览失败").showMessage() @@ -175,7 +175,7 @@ class InspectionActivity : if (binding.cameraPreview.isAvailable) { startCameraPreview() } else { - binding.cameraPreview.visibility = View.VISIBLE + binding.cameraPreviewContainer.visibility = View.VISIBLE binding.zoomText.visibility = View.VISIBLE } } @@ -187,7 +187,7 @@ class InspectionActivity : GlassMediaServiceHelper.startCameraShare(surface, cameraSurfaceCallback) }.onFailure { isPreviewRequested = false - binding.cameraPreview.visibility = View.GONE + binding.cameraPreviewContainer.visibility = View.GONE binding.zoomText.visibility = View.GONE binding.hint.text = "相机预览启动失败,请重试" (it.message ?: "相机预览启动失败").showMessage() @@ -200,7 +200,7 @@ class InspectionActivity : runCatching { GlassMediaServiceHelper.stopCameraShare(cameraSurfaceCallback) } - binding.cameraPreview.visibility = View.GONE + binding.cameraPreviewContainer.visibility = View.GONE binding.zoomText.visibility = View.GONE } diff --git a/app/src/main/res/layout/activity_inspection.xml b/app/src/main/res/layout/activity_inspection.xml index 4ce5da0..ecbe25e 100644 --- a/app/src/main/res/layout/activity_inspection.xml +++ b/app/src/main/res/layout/activity_inspection.xml @@ -104,8 +104,8 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/baseRecyclerView" /> - + app:layout_constraintTop_toBottomOf="@id/hint"> + + +