Junior — Middle
W jakich scenariuszach warto używać UIHostingController w aplikacji?
sobes.tech AI
Odpowiedź od AI
UIHostingController jest używany do integracji SwiftUI z aplikacjami UIKit. Jest to szczególnie przydatne, gdy trzeba:
- Wprowadzić widok SwiftUI do istniejącego kontrolera UIKit.
- Stopniowo migrować aplikację z UIKit na SwiftUI.
- Korzystać z zalet SwiftUI (np. deklaratywnego UI) bez konieczności pełnej przebudowy aplikacji.
Przykład użycia:
import SwiftUI
import UIKit
struct MySwiftUIView: View {
var body: some View {
Text("Cześć z SwiftUI")
}
}
class MyViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let swiftUIView = MySwiftUIView()
let hostingController = UIHostingController(rootView: swiftUIView)
addChild(hostingController)
hostingController.view.frame = view.bounds
view.addSubview(hostingController.view)
hostingController.didMove(toParent: self)
}
}
W ten sposób UIHostingController działa jako most między UIKit a SwiftUI.