Refactor ScannerView and ScanningOverlayView to remove selected scanning style binding; simplify scanning line style to a fixed modern style, enhancing code clarity and reducing state management complexity.

main
v504 2 months ago
parent b91e461ad9
commit 8b2ea07f68

@ -9,7 +9,6 @@ import QRCode
struct ScannerView: View { struct ScannerView: View {
@StateObject private var scannerViewModel = ScannerViewModel() @StateObject private var scannerViewModel = ScannerViewModel()
@State private var showPreviewPause = false @State private var showPreviewPause = false
@State private var selectedScanningStyle: ScanningLineStyle = .modern
@State private var screenOrientation = UIDevice.current.orientation @State private var screenOrientation = UIDevice.current.orientation
@State private var previewLayer: AVCaptureVideoPreviewLayer? @State private var previewLayer: AVCaptureVideoPreviewLayer?
@State private var navigateToDetail = false @State private var navigateToDetail = false
@ -31,7 +30,6 @@ struct ScannerView: View {
// //
ScanningOverlayView( ScanningOverlayView(
showPreviewPause: showPreviewPause, showPreviewPause: showPreviewPause,
selectedStyle: $selectedScanningStyle,
detectedCodesCount: scannerViewModel.detectedCodes.count, detectedCodesCount: scannerViewModel.detectedCodes.count,
onImageDecode: { showImagePicker = true } onImageDecode: { showImagePicker = true }
) )

@ -4,7 +4,6 @@ import AudioToolbox
// MARK: - // MARK: -
struct ScanningOverlayView: View { struct ScanningOverlayView: View {
let showPreviewPause: Bool let showPreviewPause: Bool
@Binding var selectedStyle: ScanningLineStyle
let detectedCodesCount: Int let detectedCodesCount: Int
let onImageDecode: () -> Void let onImageDecode: () -> Void
@ -14,7 +13,7 @@ struct ScanningOverlayView: View {
// 线 // 线
if !showPreviewPause { if !showPreviewPause {
ScanningLineView(style: selectedStyle) ScanningLineView(style: .modern)
} }
// //
@ -28,7 +27,6 @@ struct ScanningOverlayView: View {
// //
ScanningBottomButtonsView( ScanningBottomButtonsView(
showPreviewPause: showPreviewPause, showPreviewPause: showPreviewPause,
selectedStyle: $selectedStyle,
onImageDecode: onImageDecode onImageDecode: onImageDecode
) )
} }
@ -70,16 +68,10 @@ struct ScanningInstructionView: View {
// MARK: - // MARK: -
struct ScanningBottomButtonsView: View { struct ScanningBottomButtonsView: View {
let showPreviewPause: Bool let showPreviewPause: Bool
@Binding var selectedStyle: ScanningLineStyle
let onImageDecode: () -> Void let onImageDecode: () -> Void
var body: some View { var body: some View {
VStack(spacing: 15) { VStack(spacing: 15) {
// 线
if !showPreviewPause {
ScanningStyleSelectorView(selectedStyle: $selectedStyle)
}
// //
if !showPreviewPause { if !showPreviewPause {
Button(action: { Button(action: {
@ -98,10 +90,10 @@ struct ScanningBottomButtonsView: View {
.padding(.vertical, 10) .padding(.vertical, 10)
.background( .background(
RoundedRectangle(cornerRadius: 12) RoundedRectangle(cornerRadius: 12)
.fill(Color.blue.opacity(0.8)) .fill(Color.blue.opacity(0.3))
.overlay( .overlay(
RoundedRectangle(cornerRadius: 12) RoundedRectangle(cornerRadius: 12)
.stroke(Color.blue, lineWidth: 1) .stroke(Color.blue.opacity(0.6), lineWidth: 1)
) )
) )
} }

Loading…
Cancel
Save