일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- SwiftUI
- realitykit
- firebase
- arkit
- dataflow
- environmentobjet
- swift
- RxSwift
- 데이터최적화
- ar
- Network
- 네트워크
- authentication
- combine
- iphone
- 달력
- gesture
- stateobject
- fullscreencover
- Animation
- state
- WWDC
- ios
- Concurrency
- auth
- withAnimation
- CS
- Performance
- GCD
- UIKit
- Today
- Total
목록Animation (3)
XLOG
친한 개발자와 얘기를 하다가 밀리의 서재에서 책을 클릭했을 때 나오는 Animation 얘기가 나와서 어떻게 구현했을까 고민을 하다가 SwiftUI 로 구현해봐야 겠다 생각해서 시작한 일이다. 1. 문제점기존에 Namespace 를 사용할 경우 기존 view 가 없어져야함, 하지만 위에 화면을 보게되면 기존 ScrollView는 항상 있어야 함Scroll 에 따라서 해당 View 가 가지고 있는 크기 및 위치값인 CGRect 를 Update 를 해주기 위해선 PreferenceKey 를 사용해야 하는데 PreferenceKey 의 경우 하위 View 에서 상위 View의 값을 전달할 때 사용하는 것인데, FullScreenCover 는 CellView 의 상위뷰가 아님present 할 때와 dismiss..
저번 Animation 공부한 내용을 바탕으로 Camera Shutter 를 구현해 보았다. 우선 카메라 셔터 부터 시작을 해보자. struct ContentView: View { @State var buttonTapped: Bool = false var body: some View { ZStack { Color.black ZStack { // 외각 테두리 Circle() .stroke(lineWidth: 4) .foregroundColor(.white) // 내부 원 Circle() .foregroundColor(buttonColor) .frame(width: buttonTapped ? 56 : 60, height: buttonTapped ? 56 : 60) } .frame(width: 72, heig..
기본적으로 SwiftUI 에 애니메이션을 적용하기 위해 .animation(_:value:) 를 사용하거나 withAnimation() 을 사용했다. 1. 둘의 차이 우선 이 둘의 차이에 대해 먼저 확인을 해보자. animation(_:value:) 는? 먼저 .animation() 이다. 인스턴스 메소드로 some View 를 리턴한다. view를 리턴한다는 것은 viewModifier 로 생각하면 되는 것 같다. 변화를 추적할 값 V 의 변화를 감지, 그로 인해 영향을 받는 변수들을 animation 옵션에 따라 state 의 변화를 주어 해당 View에 애니메이션을 적용한다. 그렇다면 withAnimation은 ? withAnimation은 함수이다. 결과값을 Return 한다. 즉 결과값을 리턴을..