gpt4 book ai didi

ios - 如何在 Xcode 中重新启用或使用 Storyboard?

转载 作者:行者123 更新时间:2023-11-28 07:23:41 26 4
gpt4 key购买 nike

我继承了一个要开发的应用程序,之前的工程师没有使用 Storyboard ,而是将所有内容都硬编码进去。现在我不得不更改应用程序中项目的格式和位置而且我觉得使用 Storyboard会容易得多。他们是否仍然可以使用 Storyboard并让它显示应用程序中硬编码的内容?

我已经附上了我的图片,右击 Storyboard并尝试使用界面生成器,但是当我点击它时没有任何反应。我还附上了一张代码片段的照片,其他工程师声称已经摆脱了 AppDelegate 中对 Storyboard的需求。我尝试注释掉代码行,当我这样做时,应用程序只是一个黑屏。

有问题的代码是这样的:

var window: UIWindow? 

window = UIWindow(frame: UIScreen.main.bounds)
window?.makeKeyAndVisible()

最佳答案

回答问题

通过代码从 storyboard 加载 rootViewController

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {

// ....

// Initilazie main window.
let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
let rootController = mainStoryboard.instantiateInitialViewController()!

guard let w = self.window else { return true }

w.rootViewController = rootController
w.makeKeyAndVisible()
}


我的建议

我会建议结合使用代码设计的现有 UI 和使用 Storyboard 设计的新 UI。因为 UIViewController 可以通过代码从 Storyboard中加载。它可以很容易地结合到现有的项目中。

// Example
let storyboard = UIStoryboard(name: "DeviceConfigStoryboard", bundle: nil)
let v = storyboard.instantiateViewController(withIdentifier: "upgrade_device") as! DCNavigationViewControllerBase
v.configure(device: device)

如果google multiple storyboard,你可以找到很多关于将UI 划分为多个storyboard 文件的教程,like this one .

关于ios - 如何在 Xcode 中重新启用或使用 Storyboard?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57285306/

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