如何在首次启动应用程序时添加 iOS 叠加视图?

How to add iOS Overlay View on first app launch?

我想像在本机 iOS 应用程序中一样,在我的应用程序首次启动时添加叠加视图,例如如此屏幕截图所示。 这怎么可能?有专门的 class/view 吗?

谢谢。

使用 UserDefaults 存储一个标志,例如“didShowIntro”。已设置该标志时不显示简介。

叠加层本身看起来像一个常规的 UIViewController 模态显示,即 self.isModalInPresentation = true

您可以添加一个 InitialViewController 并执行类似于我在此覆盖方法上实现它的方式:

注意:我的 InitialViewController 是 运行 的第一件事,我检查它是否是用户第一次打开应用程序,如果是第一次,我会使用方法显示模态我放在下面,如果不是第一次打开,我只显示 MainViewController(或者你的 HomeViewController 或者你想要的其他视图)

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    // For making the connection with SplashScreenViewController so it could pass data back
    if segue.destination is SplashScreenViewController {
        let vc = segue.destination as? SplashScreenViewController
        vc?.delegate = self
    }
}

编辑:这是包含我的观点的故事板的样子

这是我的应用首次启动时的样子