I have tried to addSubView a SwiftUI View to UIView. self.view.addSubview(contentView)
Error: Cannot convert value of type \'ContentView\
Step 1: Create instances of UIHostingController by using SwiftUI View
struct ContentView : View {
var body: some View {
VStack {
Text("Test")
Text("Test2")
}
}
}
var child = UIHostingController(rootView: ContentView())
Step 2: Add instance of UIHostingController as a child view controller to Any UIKit ViewController
var parent = UIViewController()
child.view.translatesAutoresizingMaskIntoConstraints = false
child.view.frame = parent.view.bounds
// First, add the view of the child to the view of the parent
parent.view.addSubview(child.view)
// Then, add the child to the parent
parent.addChild(child)
You can use the following code to remove a child controller Remove from view Controller
// Then, remove the child from its parent
child.removeFromParent()
// Finally, remove the child’s view from the parent’s
child.view.removeFromSuperview()