Junior — Middle
Milyen helyzetekben célszerű az UIHostingController használata egy alkalmazásban?
sobes.tech MI
Válasz az MI-től
A UIHostingController-t arra használják, hogy a SwiftUI-t beépítsék a UIKit alkalmazásokba. Ez különösen hasznos, amikor:
- Egy SwiftUI nézetet szeretnénk beágyazni egy meglévő UIKit vezérlőbe.
- Fokozatosan át akarjuk migrálni az alkalmazást UIKit-ről SwiftUI-re.
- A SwiftUI előnyeit (pl. deklaratív UI) szeretnénk kihasználni az alkalmazás teljes újraírása nélkül.
Használati példa:
import SwiftUI
import UIKit
struct MySwiftUIView: View {
var body: some View {
Text("Üdv a SwiftUI-ból")
}
}
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)
}
}
Így a UIHostingController hidat képez a UIKit és a SwiftUI között.