gpt4 book ai didi

macos - OSX/macOS - 如何将 xib 迁移到 Storyboard

转载 作者:行者123 更新时间:2023-12-03 16:17:49 29 4
gpt4 key购买 nike

我有一个带有 mainmenu.xib 的应用程序,出于各种原因我想将其迁移到 Storyboard。有没有办法在不创建新项目的情况下做到这一点?

最佳答案

具体操作方法如下:

  1. 使用 Storyboard 创建一个新项目。我们只是用它来复制一个在对象库中找不到的小东西。

  2. 返回现有项目,在现有项目中添加新的 Storyboard ui 文件(例如 Main.storyboard)。与开始新项目时不同, Storyboard文件将完全空白。

  3. 从新项目的 Storyboard 中,复制“应用程序场景”并将其粘贴到现有项目的 Storyboard 中。这是由于无法从对象库获取应用程序场景而采取的解决方法。执行此操作后,通过查看连接检查器(右侧面板)来检查应用程序委托(delegate)对象的“委托(delegate)”属性是否有“应用程序”的引用导出。如果不是,请将它们链接在一起。

  4. 在对象库(右侧面板>下面的对象库)中,添加窗口 Controller 。这将添加窗口 Controller 场景和 View Controller 场景。

  5. 如果您使用自定义类,请为窗口 Controller /窗口/ View Controller / View 引用适当的类。

  6. 打开您之前的 xib 文件并复制到您之前使用过的任何 View 中。

  7. 在现有项目的 xcproj 文件中,转到构建目标的信息部分,并将 xib 字典键/值替换为“NSMainStoryboardFile”作为键,“Main”(或无论您的 Storyboard文件被称为(无文件扩展名)作为值。

补充说明:

  • 如果您使用自定义 View Controller 并将它们迁移到 Storyboard,请确保它们允许通过 initWithCoder 进行初始化。

  • 如果你需要从appdelegate获取viewcontroller,你不能通过NSStoryboard的instantiateWithName方法来做到这一点,这将创建一个新的实例。相反,请执行以下操作:

    NSApplication *application = [NSApplication sharedApplication];

    NSWindow *window = application.windows[0];

    self.myCustomViewController = (MyCustomViewController *)window.contentViewController;

关于macos - OSX/macOS - 如何将 xib 迁移到 Storyboard ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37151839/

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