Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- APNS
- 티스토리챌린지
- ios
- WWDC
- 야곰 # 야곰아카데미커리어스타터캠프 #iOS개발자 # 부트캠프
- modern concurrency
- SWIFT
- 오블완
- modern concurrency deep dive
Archives
- Today
- Total
Geon
iOS 앱에서 SwiftUI와 UIKit을 함께 사용하는 방법은 무엇인가요? 본문
iOS 앱에서 SwiftUI와 UIKit을 함께 사용하는 방법은 무엇인가요?
- 최소지원 버전이 iOS13 버전 이상
SwifUI 뷰에서 UIKit 뷰 컨트롤러를 사용하는 방법을 설명해주세요.
- UIHostingController로 래핑해서 사용
UIKit 뷰 컨트롤러에서 SwiftUI 뷰를 호스팅하는 방법은 무엇인가요?
- UIViewRepresentable 프로토콜을 채택하게 하여 래핑함
func updateUIViewController(_ uiViewController: UIViewController, context: Context)
- SwiftUI 에서 View가 재 랜더했을시 수행하면 좋을 로직들 적용
- func makeUIView(context: Context) -> UIView
- 초기 init시 셋팅할 내용
func makeCoordinator() -> Coordinator {
return Coordinator(owner: self)
}
- Coordinator의 경우는 내부에 TextFieldDelegate등 UIKit에서 제공한 Delegate를 사용할수 있게 구현된것
Life Cycle
- Initialization: makeCoordinator() → make() → update()
- Update: update()
SwiftUI와 UIKit을 함께 사용할 때 주의할 점은 무엇인가요?
- 랜더링 하는 방식이 다르니, 함께 사용되는 View가 모두 동시에 랜더링 되도록 구현해야한다.