오디션 지원 기능 추가
This commit is contained in:
108
SodaLive/Sources/Audition/Applicant/ApplyMethodView.swift
Normal file
108
SodaLive/Sources/Audition/Applicant/ApplyMethodView.swift
Normal file
@@ -0,0 +1,108 @@
|
||||
//
|
||||
// ApplyMethodView.swift
|
||||
// SodaLive
|
||||
//
|
||||
// Created by klaus on 1/7/25.
|
||||
//
|
||||
|
||||
import SwiftUI
|
||||
|
||||
struct ApplyMethodView: View {
|
||||
|
||||
@Binding var isShowing: Bool
|
||||
|
||||
let onClickSelectAudioFile: () -> Void
|
||||
let onClickRecording: () -> Void
|
||||
|
||||
var body: some View {
|
||||
ZStack {
|
||||
Color.black.opacity(0.7).ignoresSafeArea()
|
||||
.onTapGesture {
|
||||
isShowing = false
|
||||
}
|
||||
|
||||
VStack(spacing: 0) {
|
||||
HStack(spacing: 0) {
|
||||
Spacer()
|
||||
Image("ic_noti_stop")
|
||||
.onTapGesture {
|
||||
isShowing = false
|
||||
}
|
||||
}
|
||||
|
||||
Text("오디션 지원방식")
|
||||
.font(.custom(Font.bold.rawValue, size: 18.3))
|
||||
.foregroundColor(Color.graybb)
|
||||
.padding(.top, 33.3)
|
||||
|
||||
HStack(spacing: 13.3) {
|
||||
HStack(spacing: 3) {
|
||||
Image("ic_upload")
|
||||
|
||||
Text("파일 업로드")
|
||||
.font(.custom(Font.medium.rawValue, size: 14.7))
|
||||
.foregroundColor(Color.button)
|
||||
}
|
||||
.padding(.vertical, 8)
|
||||
.frame(maxWidth: .infinity)
|
||||
.background(Color.bg)
|
||||
.cornerRadius(5.3)
|
||||
.overlay(
|
||||
RoundedRectangle(cornerRadius: 8)
|
||||
.stroke()
|
||||
.foregroundColor(Color.button)
|
||||
)
|
||||
.contentShape(Rectangle())
|
||||
.onTapGesture {
|
||||
onClickSelectAudioFile()
|
||||
}
|
||||
|
||||
HStack(spacing: 3) {
|
||||
Image("ic_mic_color_button")
|
||||
|
||||
Text("바로 녹음")
|
||||
.font(.custom(Font.medium.rawValue, size: 14.7))
|
||||
.foregroundColor(Color.button)
|
||||
}
|
||||
.padding(.vertical, 8)
|
||||
.frame(maxWidth: .infinity)
|
||||
.background(Color.bg)
|
||||
.cornerRadius(5.3)
|
||||
.overlay(
|
||||
RoundedRectangle(cornerRadius: 8)
|
||||
.stroke()
|
||||
.foregroundColor(Color.button)
|
||||
)
|
||||
.contentShape(Rectangle())
|
||||
.onTapGesture {
|
||||
onClickRecording()
|
||||
}
|
||||
}
|
||||
.padding(.top, 21.3)
|
||||
|
||||
HStack(spacing: 0) {
|
||||
Text("※ 파일은 mp3, aac만 업로드 가능")
|
||||
.font(.custom(Font.medium.rawValue, size: 12))
|
||||
.foregroundColor(Color.gray77)
|
||||
.padding(.top, 13.3)
|
||||
|
||||
Spacer()
|
||||
}
|
||||
}
|
||||
.padding(.horizontal, 16.7)
|
||||
.padding(.vertical, 13.3)
|
||||
.frame(maxWidth: .infinity)
|
||||
.background(Color.gray22)
|
||||
.cornerRadius(10.3)
|
||||
.padding(.horizontal, 13.3)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#Preview {
|
||||
ApplyMethodView(
|
||||
isShowing: .constant(true),
|
||||
onClickSelectAudioFile: {},
|
||||
onClickRecording: {}
|
||||
)
|
||||
}
|
||||
Reference in New Issue
Block a user