I am doing this:
class PortraitViewController: UIHostingController<MyView> {
override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
return .portrait
}
}
then when I instantiate it I do this:
let vc = PortraitViewController(rootView: MyView())
All works great.
I would like to create a fully generic PortraitViewController that could accept any View and not just MyView.
I am not sure how to change the UIHostingController<MyView> to make it work with any view. I tried UIHostingController<View> but it's not working.
How can I make it so let vc = PortraitViewController(rootView: MyView()) can work with another View and not just MyView?
CodePudding user response:
You can constrain the generic to just a View type:
class PortraitViewController<T:View>: UIHostingController<T>
