일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Swift
- 네이버 부캠
- 부트캠프
- IOS
- 코코아 인터널스
- Hello
- WWDC
- rxswift
- 후기
- Design Pattern
- Cocoa Internals
- 커스텀 뷰
- Opensource
- Tistory
- 알고리즘
- World
- 개발
- 단위 테스트
- SwiftUI
- OS
- development
- 디자인패턴
- 부스트캠프
- boostcamp
- notion
- Algorithm
- Today
- Total
목록Programming/SwiftUI (2)
꿈돌이랜드
Dependency lifetimesHow task locals workDependency 프로퍼티 래퍼가 초기화되면, 그 순간 dependency의 현재 상태를 캡처합니다.@TaskLocal 변수가 새로운 비동기 task들로부터 상속되는 것과 비슷합니다.TaskLocal 변수는 withValue 메서드 Scope 내에서만 값을 변경 가능합니다.이는 TaskLocal 변수가 동시성 환경에서 Thread-safe하게 만듦니다.단, 상속된 Task의 Scope 내에서는 부모 Task의 TaskLocal 값을 상속받습니다.하지만, 일반적으로 task local은 escaping closure 범위를 넘어설 때마다 오버라이드를 잃습니다.아래 예시 코드 처럼 withValue로 오버라이드한 값이 asyncAfte..
SwiftUI는 UIKit와 다음과 같은 방법들로 호환시킬 수 있습니다.UIHostingControllerA UIKit view controller that manages a SwiftUI view hierarchy.SwiftUI 뷰 계층을 관리하는 UIKit의 ViewControllerSwiftUI 뷰 → UIKit 뷰 !정의class UIHostingController where Content : ViewSwiftUI 뷰들을 UIKit 뷰 계층에 통합하고 싶을 때, UIHostingViewController 객체를 생성합니다. 생성시간에, 이 ViewController의 rootView로 사용하고 싶은 SwiftUI 뷰를 지정해야 합니다. 나중에 SwiftUI/UIHostingController/ro..