// // PlateNumberView.swift // AutoCat2 // // Created by Selim Mustafaev on 21.11.2021. // import SwiftUI struct PlateNumberView: View { let number: PlateNumber let unrecognized: Bool let outdated: Bool private var fgColor: Color { if unrecognized { return Color("PlateBackgroundError") } else { return Color("PlateForeground") } } var body: some View { ZStack { RoundedRectangle(cornerRadius: 6) .fill(fgColor) GeometryReader { geometry in HStack(alignment: .center, spacing: 2) { ZStack { RoundedRectangle(cornerRadius: 4) .fill(Color("PlateBackground")) Text(number.mainPart()) .font(Font.custom("RoadNumbers", size: geometry.size.height*0.9)) } .frame(width: geometry.size.width*0.73 - 1) ZStack { RoundedRectangle(cornerRadius: 4) .fill(Color("PlateBackground")) VStack(spacing: 0) { Text(number.region()) .frame(height: geometry.size.height*0.65, alignment: .center) HStack { } .frame(height: geometry.size.height*0.35, alignment: .center) } } .frame(width: geometry.size.width*0.27 - 1) } } .padding(2) } .aspectRatio(520.0/112.0, contentMode: .fit) } } struct PlateNumberView_Previews: PreviewProvider { static var previews: some View { Group { PlateNumberView(number: PlateNumber("Е201АМ761"), unrecognized: false, outdated: false) PlateNumberView(number: PlateNumber("Е201АМ761"), unrecognized: true, outdated: false) PlateNumberView(number: PlateNumber("Е201АМ761"), unrecognized: false, outdated: true) } .previewLayout(.fixed(width: 200, height: 50)) } }