首先判断是否为iOS 13,只有iOS 13+才能支持SwiftUI;
Swift跳转到SwiftUI;以Push为例,present一样的,只不过是需要用UIHostingController初始化你的SwiftUIView。初始化出来的就是一个正常的UIViewController,正儿八经的控制器,怎么用都行。
示例代码:
if #available(iOS 13, *) {
let testSwiftUIView = UIHostingController(rootView: TestSwiftUIView())
navigationController?.pushViewController(testSwiftUIView, animated: true)
}