gpt4 book ai didi

objective-c - 如何在 Xcode 11 中启动没有 Storyboard >= iOS 13 的新项目?

转载 作者:行者123 更新时间:2023-12-03 18:09:16 25 4
gpt4 key购买 nike

带有 iOS 13 的 Xcode 11 现在以与以前略有不同的设置启动,将许多功能从 AppDelegate.m 文件移动到一个名为 SceneDelegate.m 的新文件中 - 删除 Main.storyboard 并在 AppDelegate 中设置 Root View Controller 不再是选项,导致以下错误:

-[AppDelegate window]: unrecognized selector sent to instance

enter image description here

如何在没有 Storyboard 的情况下继续构建新项目?

最佳答案

检查这篇文章:Xcode 11.3 | [从项目中删除 Storyboard ][1]
第一步:删除 Storyboard
成功创建新项目后,导航到 Xcode 窗口左角的 Project Navigator。我们需要从这里删除 Main.storyboard 文件。
第二步:移除主界面
然后移动到常规选项卡并在此处删除您的主界面链接,然后按 Enter。
第三步:从 Info.plist 中删除 Storyboard 文件。
从 Info.plist 中删除 Main.storyboard。

第四步:让您的应用在没有 Storyboard 的情况下运行。
如果您在 Project Navigator 中仔细看过,您可以看到 2 个委托(delegate)文件 AppDelegate.swift 和 SceneDelegate.swift。所以在之前的 Xcode 中,我们已经看到 AppDelegate.swift 中存在 UIWindow 变量,而现在对于 Xcode 11,它已经消失了。现在您可以在 SceneDelegate.swift 文件中看到 window 变量。
在此文件中,您需要为加载 xib 文件进行配置。

func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
guard let windowScene = (scene as? UIWindowScene) else { return }
window = UIWindow(frame: windowScene.coordinateSpace.bounds)
window?.windowScene = windowScene
window?.rootViewController = ViewController()
window?.makeKeyAndVisible()
}
🤘就是这样!
现在您可以在没有 Storyboard 的情况下运行您的应用程序。
GitHub sample project

关于objective-c - 如何在 Xcode 11 中启动没有 Storyboard >= iOS 13 的新项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58655903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com