Search
⚙️

애니메이션 동작의 그 이면

부제
카테고리
SwiftUI
세부 카테고리
애니메이션
Combine 카테고리
최종편집일
2022/07/25 05:34
작성중
관련된 포스팅
생성 일시
2022/07/16 15:58
태그

withAnimation() 메서드에 대해

Returns the result of recomputing the view’s body with the provided animation.
뷰의 바디를 재 연산한 결과를 리턴한다. 이때 제공받은 애니메이션이 있다면 이를 감안하여 리턴한다.
This function sets the given Animation as the animationproperty of the thread’s current Transactio
이 메서드는 건네받은 Animation 인스턴스를 스레드의 현재 Transaction 인스턴스의 animation 프로퍼티로 설정한다.

Transaction ?

The context of the current state-processing update.
현재 state 프로세스 업데이트의 맥락을 나타내는 구조체

Animation

애니메이션 측면에서
기본적인 동작은 Thread 1 이 아닌
여타 스레드에서 일어남
다만 사용자 입력이 빈번 즉 애니메이션 계산이 끝나기 전에 다시한번 애니메이션에 대해 요청이 들어오면
이는 Thread 1에서 처리

Animation 되는 View 의 생명주기

View 가 화면에 나타나는 즉시 →
withAnimation(.spring()) { show.toggle() print("tap") }
Swift
복사
withAnimation 안에 들어 있는 코드는 즉시 실행됨.
즉 show 값은 즉시 토글됨, 애니메이션이 끝나야 토글되는 게 아님.
View 의 상태값을 업데이트 하는 경우에
해당 View 의 렌더링만 따로 계산하는 듯.