-
SwiftUI Picker 60 - Picker 다중 컬럼 피커뷰 및 현재 시간SwiftUI 100 레시피/Pickers 2022. 6. 27. 15:56
import SwiftUI
struct ContentView: View {
@State private var selectedHour: Int = 0
@State private var selectedMinute: Int = 0
var selectedTime: Date?{
var clendarDateComponts = Calendar.current.dateComponents([.day, .year, .month], from: Date())
clendarDateComponts.hour = selectedHour
clendarDateComponts.minute = selectedMinute
let current = Calendar.current.date(from: clendarDateComponts)
return current
}
var body: some View {
GeometryReader{ geomtry in
VStack {
HStack{
Spacer()
VStack {
Text("Hour")
Picker("Hour", selection: $selectedHour){
ForEach(1...12, id: \.self){hour in
Text("\(hour)").tag(hour)
}
}
.frame(width: geomtry.size.width/3)
.clipped()
}
Spacer()
VStack {
Text("Minute")
Picker("Minute", selection: $selectedMinute){
ForEach(1...60, id: \.self){minute in
Text("\(minute)").tag(minute)
}
}
.frame(width: geomtry.size.width/3)
.clipped()
}
Spacer()
}
.frame(maxWidth: .infinity, maxHeight: 500)
.pickerStyle(InlinePickerStyle())
selectedTime.map{
Text("\($0)")
//.font(.caption)
.fontWeight(.bold)
}
}
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
'SwiftUI 100 레시피 > Pickers' 카테고리의 다른 글
SwiftUI Picker 63 - 카메라 통합하기 (0) 2022.06.27 SwiftUI Picker 62 - enum을 사용한 Segmented 컨트롤 (0) 2022.06.27 SwiftUI Picker 61 - Segmented 컨트롤 (0) 2022.06.27 SwiftUI Picker 59 - Picker 싱글 컬럼 피커뷰 만들기 (0) 2022.06.27