【发布时间】:2020-10-17 00:54:00
【问题描述】:
我是 SwiftUI 的新手。我有一个新项目Test,运行 SwiftUI 界面和 SwiftUI App 生命周期。这个生命周期对于 iOS 14 和 Xcode 12 来说是新的。
我想在我的项目中使用 Github 包 BetterSheet。我已经添加了包依赖项。但是,如Basic Usage section of the readme 中所述,我必须使用SceneDelegate.swift 中的工作表支持来初始化UIHostingController,如下所示:
window.rootViewController = UIHostingController.withBetterSheetSupport(rootView: ContentView())
由于新生命周期的性质,我的应用没有 SceneDelegate.swift。我有 TestApp.swift 代替:
@main
struct TestApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
我想在我的项目中使用 BetterSheet 包,但第一步似乎妨碍了我。我该如何解决这个问题?
【问题讨论】:
-
创建一个使用 SceneDelegate 的新项目。
-
回应您的评论,这似乎是最好的做法。新的 SwiftUI 生命周期太新了,目前缺少文档。
-
我不会说缺少文档,更多的是开发人员坚持希望将 UIKit 范例用于 SwiftUI 应用程序,而 Apple 显然正试图做相反的事情。