Search
🍌

UIView → SwiftUI

부제
카테고리
SwiftUI
세부 카테고리
Combine 카테고리
최종편집일
2022/09/26 12:58
작성중
관련된 포스팅
생성 일시
2022/07/16 15:56
태그

사용방법

1.
UIViewRepresentable 을 준수하는 struct 만들기
2.
해당 뷰 에서 사용되는 프로퍼티 정의하기
3.
makeUIView() 메서드 추가하기
→ 필요한 UIKit 뷰를 만들어서 리턴하기
4.
updateUIView() 메서드 추가하기
updateUIView() 는 데이터가 변경될 때마다 호출됨.
// 1 struct TextView: UIViewRepresentable { // 2 : 바인딩 데이터 선언 -> 해당 데이터 변경시마낟 updateUIView() 호출 @Binding var text: NSMutableAttributedString // 3 : 만들고자하는 UIKit View 를 리턴하기 func makeUIView(context: Context) -> UITextView { UITextView() } // 4 : 변경된 데이터를 연결해준다. func updateUIView(_ uiView: UITextView, context: Context) { uiView.attributedText = text } }
Swift
복사
5.
위에서 정의한 Struct 를 SwiftUI 에서 View 처럼 사용하기
struct ContentView: View { @State var text = NSMutableAttributedString(string: "") var body: some View { TextView(text: $text) .frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: .infinity) } }
Swift
복사

UIKit → SwiftUI 데이터 인터랙션