SwiftUI 复用旧项目代码之UIViewcontroller(2020版教程)
SwiftUI 非常好用,开发界面高效快捷,但是具体到业务层面,复用历史代码是必须要研究到事情。
如何在SwiftUI中调用UIViewcontroller
- 1、 创建一个 Wrapper
例如我们有个Example1ViewController旧代码,我们可以先通过UIViewControllerRepresentable创建一个Wrapper
import Foundation
import SwiftUI
struct MKControllerWrapper: UIViewControllerRepresentable {
typealias UIViewControllerType = Example1ViewController
func makeUIViewController(context: UIViewControllerRepresentableContext<MKControllerWrapper>) -> MKControllerWrapper.UIViewControllerType {
return Example1ViewController()
}
func updateUIViewController(_ uiViewController: MKControllerWrapper.UIViewControllerType, context: UIViewControllerRepresentableContext<MKControllerWrapper>) {
//
}
}
- 2、 在SwiftUI的代码中调用这个Wrapper即可
NavigationLink( destination: MKControllerWrapper()){
Text(" Markdown文本编辑器 ")
.bold()
.foregroundColor(.white)
.background(Color.purple)
.cornerRadius(6)
.shadow(radius: 4)
}
效果
更多SwiftUI教程和代码关注专栏
- 请关注我的专栏 SwiftUI教程与源码