【问题标题】:How to move the views from a XIB file to storyboards in a project in Xcode?如何将视图从 XIB 文件移动到 Xcode 项目中的情节提要?
【发布时间】:2013-05-12 04:30:27
【问题描述】:

我是 iOS 编程和 Xcode 的新手。我有一个项目与 5 viewControllersXIB 文件完美配合。我必须在其中添加更多功能(例如 Google 地图、iAd 横幅等),因此我发现很难管理所有功能。所以我想在我的项目中使用 Storyboards,这样我就可以更清楚地看到在执行某个操作后加载了哪些视图。现在我必须将视图和整个项目从 XIB 文件移动到情节提要中。

我将“视图对象”从 XIB 文件复制到 Storyboard,并在身份检查器中将类名更改为相应的 ViewController 类。但这不起作用。为此还需要做哪些改变?

我查看了 YouTube 上的一些教程,但没有多大帮助。

请告诉我如何做到这一点。如果可能的话,请给我任何链接以获得一些可以帮助我实现它的知识。

提前致谢。

【问题讨论】:

    标签: ios xcode storyboard


    【解决方案1】:

    你需要做更多,我列出了你应该做的基本步骤(可能因情况而异):

    • 您可以从 Xib 复制视图控制器并将其粘贴到 storyBoard 中,将类名称与您的 ViewController 类相同。可能您需要再次连接 ViewController 中的对象和其他连接。
    • 在 Xib 的情况下我们用来实例化控制器的方法,即:

      - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
      

      将不再使用。现在您需要以应有的方式将控制器与 segue 连接连接起来。然后你需要使用方法而不是上述方法:

      - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
      

    实例化视图对象然后相应地处理它。

    根据您的代码还会有许多其他更改,但这些都是基本更改。

    【讨论】:

    • 好的.. 但是我有一个问题...我用 Storyboard 和 SingleView 应用程序创建了一个新项目.. 因为我没有这个功能 - (void)prepareForSegue:( UIStoryboardSegue *)segue sender:(id)sender 新应用程序如何知道它必须从故事板加载视图?
    • 当您使用情节提要创建新应用程序时,它会在情节提要的 plist 文件中包含一个字段。 baseView 控制器名称和默认在故事板名称中创建的视图将相同,它将使用故事板创建 baseView。到此为止,无需使用 segue 方法(当您选择带有情节提要的单一视图时,您的应用程序将在此之前小心处理)。之后添加任何其他需要使用 segue 方法的视图。
    猜你喜欢
    • 1970-01-01
    • 2012-12-18
    • 1970-01-01
    • 2012-07-29
    • 1970-01-01
    • 2012-09-14
    • 2012-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多