使用UIHostingController
可以创建 UIKit 视图控制器管理 SwiftUI 视图层次结构
override func viewDidLoad() {
super.viewDidLoad()
navTitle = "Beacon Sample"
createViews()
}
private func createViews() {
let controller = UIHostingController(rootView: BeaconSampleView())
addChild(controller)
controller.view.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(controller.view)
controller.didMove(toParent: self)
NSLayoutConstraint.activate([
controller.view.topAnchor.constraint(equalTo: view.topAnchor, constant: kNaviBarMaxY),
controller.view.leftAnchor.constraint(equalTo: view.leftAnchor, constant: 0),
controller.view.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: 0),
controller.view.rightAnchor.constraint(equalTo: view.rightAnchor, constant: 0)
])
}
将SwiftUI 中View添加到视图中