SwiftUI 自定义启动屏幕?

Posted

技术标签:

【中文标题】SwiftUI 自定义启动屏幕?【英文标题】:SwiftUI custom launch screen? 【发布时间】:2020-10-21 16:34:18 【问题描述】:

从 UIKit/Storyboards 切换到 SwiftUI,我有点困惑如何使用自定义视图作为启动屏幕,就像我之前使用 LaunchScreen.storyboard 时一样。

到目前为止,从我在互联网上找到的所有教程中,我已经阅读到我应该在UILaunchScreen 条目中将我的背景颜色和图像声明为字典Info.plist

但是,与以前使用启动屏幕故事板相比,我觉得提供的选择要少得多。我错过了什么吗?

感谢您的帮助

【问题讨论】:

SwiftUI 也使用LaunchScreen.storyboard 作为 App 的启动画面,有什么不同吗? @leorider 我知道这一点,但我想知道是否有更“SwiftUI-ish”的方式来做到这一点?就像使用 SwiftUI 视图作为我的启动视图。 如您所知,有两种方法可以设置 App 的启动视图:LaunchImageSourceLaunchScreen.storyboard,然后将 LaunchImageSource 删除。所以我认为·LaunchScreen.storyboard·是设置App的Launch View的唯一方法,至少现在是这样 好的,谢谢您的回答!我想我将不得不这样做。 【参考方案1】:

在 xCode 12.4 中,当您使用 SwiftUI 时,默认情况下您没有文件“Launch Screen.storyboard”。 Info.plist 中没有使用自定义自定义启动屏幕的选项。所以你必须通过库添加它,然后编辑它。之后,您从项目导航器中选择了您的 .xcodeproj 文件,当您在 TARGETS 部分的常规选项卡中选择您的项目名称时,将 Launch Screen File 更改为您的启动屏幕的名称。

【讨论】:

以上是关于SwiftUI 自定义启动屏幕?的主要内容,如果未能解决你的问题,请参考以下文章

SwiftUI 2.0:如何使用没有标题的工具栏()自定义 iOS 14 导航栏?

Xcode 6 自定义启动屏幕

启动屏幕可能无法设置自定义类名

如何使用自定义命令为每个屏幕启动多个屏幕?

带有自定义启动屏幕的 UIApplication 快捷方式

SwiftUI-自定义容器