일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- GCD
- dataflow
- view
- state
- 달력
- avsession
- auth
- 최적화
- Performance
- SwiftUI
- iphone
- combine
- 접근성제어
- Animation
- gesture
- CS
- stateobject
- RxSwift
- UIKit
- Concurrency
- authentication
- Network
- ios
- 네트워크
- arkit
- withAnimation
- WWDC
- swift
- firebase
- toolbarvisibility
- Today
- Total
목록달력 (2)
XLOG

이전 Posting 에 달력에 활용할 무한스크롤에 대한 아이디어를 적어서 포스팅 한 적이 있다. 그래서 이번엔 그 스크롤에 활용할 달력을 만들어 보려고 한다. 그러기 위해선 Swift 에서 날짜를 다루는 것들에 대해 먼저 알아봐야 한다. 그래서 Date, Calendar 를 확인할 예정이다. 우선 Date 기본 파라미터 없이 init을 하게 되면 현재 날짜와 시간을 알려준다. 여기서 timeInterval 은 시간차(초 단위) 날짜를 구한다고 알고 있으면 된다. Calendar 는 달력유닛과 특정 시점으로 정의를 내려준다고 한다. 그리고 날짜 계산 및 비교도 제공을 해준다. 여기서 달력 유닛은 말그대로 달력의 종류인데 일반적으로 양력(그레고리언) 을 사용한다. 이것과 관련된 설정으로 아이폰에서 일반 > ..

작년에 SwiftUI를 공부하면서 캘린더를 만들어야 하는 상황이 있었다. 단순히 버튼을 눌러 값을 변화시키는 것이라면 조금은 간단할 수 있지만, 기본 제공 달력 처럼 Scroll Animation 효과가 있어야 한다. 기본적인 Infinity Scroll의 경우 한 방향으로 지속적으로 작동, 값을 추가만 하면 된다. 하지만 달력의 경우 좌, 우 즉 값이 추가되거나 감소되거나 해야한다. 무작정 사람이 스크롤 할 만한 범위의 값을 불러와서 만들기는 싫었다. 내가 생각한 아이디어는 3주치의 배열을 계속해서 바꿔주는 것이다. Paging을 사용하게 되면 쉽게 될 줄 알았지만 값의 변화에 따른 View의 재생성되는 과정이 매끄럽지 못했다. 그 당시 생각할 수 있었던 아이디어는 HStack 의 특성을 이용하여 of..