기어가더라도 제대로

[SwiftUI-기초] DatePicker 본문

SwiftUI - 기초

[SwiftUI-기초] DatePicker

Damagucci-juice 2022. 10. 18. 21:53
  • Picker 중에 날짜를 고르는 Picker 라고 생각하면 편하다. 
  • SwiftUI 답게 @State로 선택한 날짜를 저장할 변수를 하나 선언해주자. 

@State private var wakeUp = Date.now

DatePicker("Please enter a date", selection: $wakeUp)
  • 저렇게 하면 Please enter a date 글귀가 거슬릴 수 있는데 .labelsHidden() 을 사용
    • 시각적으로 보이진 않으나, Voice Over 엔 잡힌다. 
    • "" 으로 생략하면 공백이 레이블에 잡혀서 원하는 그림이 나오지 않을 수 있다. 

.labelsHidden()
title에 "" 넣기. 공간을 차지하는 것이 보인다.

DatePicker("Please enter a date", selection: $wakeUp)
	.labelsHidden()

선택 옵션  -  displayedComponents

  • 날짜, 시간 
    • (기본값, 해당 파라미터를 않설정하면 됨)
  • 날짜 only
    • .date

  • 시간 only
    • .hourAndMinute

  • 각각이 하나의 옵션이다. 
DatePicker("Please enter a time", selection: $wakeUp, displayedComponents: .hourAndMinute)

내일 표시 - addingTimeInterval

func exampleDates() {
    // create a second Date instance set to one day in seconds from now
    let tomorrow = Date.now.addingTimeInterval(86400)

    // create a range from those two
    let range = Date.now...tomorrow
}
  • 지금 순간으로부터 내일을 표시하는 것은 현재 시간에서 내일까지의 시간초를 더하는 것이다. 
  • 두 Date를 ... 으로 범위 값으로 지정할 수도 있다. 

범위 지정 - in

  • in 파라미터를 이용해서 범위를 지정해 설정할 수 있다. 
  • 한쪽으로 열린 범위도 사용 가능하다 
    • ...Date.now: 과거부터 지금까지 활성화
    • Date.now...: 지금부터 미래 활성화
    • now...tomorrow: 지금부터 내일까지 활성화
...Date.now Date.now... Date.now...
Date.now.addingTimeInterval(86400))
...Date.now

 

Comments