【发布时间】:2020-10-23 01:49:58
【问题描述】:
我正在将一个项目从 ViewController/Storyboard 转换到 swiftUI。
ViewController 实现了一个协议,因此继承自 NSObjectProtocol。
在SwiftUI中,没有ViewController,但是有一个ContentView,它是一个struct。这不能从 NSObjectProtocol 继承。
在“旧”方式中,我需要使用模型/视图/控制器设计模式。我还应该使用 swiftUI 吗?如果是这样,从它的名字看,似乎 ContentView 应该只是视图,而我缺少控制器。添加Controller的推荐方式是什么,可以是继承自NSObjectProtocol的类?
【问题讨论】:
-
我还应该使用 swiftUI 吗? - 不,Apple 将 MVVM 视为 SwiftUI 的原生模式(WWDC 2019)。顺便说一句,对于 macOS,我想说过渡有点早。
-
感谢您的指点。你能详细说明为什么它早吗? swiftUI还不稳定吗?
-
不,它很稳定,但是有足够多的错误,并且与 AppKit/UIKit 和更多面向 iOS 的相比仍然非常有限。
标签: swift macos model-view-controller swiftui