【问题标题】:integrating iOS4 project into iOS5 project将 iOS4 项目集成到 iOS5 项目中
【发布时间】:2012-06-29 17:03:22
【问题描述】:

我有一个关于集成两个 iOS 应用程序的新手问题。我在 iOS 5 中创建了一个应用程序(我的第一个应用程序,所以我对 iOS 4 没有任何了解,除了有 xibs 文件而不是情节提要并且不包括 ARC 的事实)。 现在我必须在我的 iOS 5 应用程序中包含一个较旧的独立应用程序(为带有 xibs 和非 ARC 的 iOS 4 而构建)。假设在我的应用程序的主菜单视图中,将有一个新按钮打开另一个应用程序的主菜单。

所以我做了一些研究并找出如何通过 fno-objc-arc 标志禁用 ARC。好的,现在我已经将第二个应用程序的所有文件导入到我的应用程序中,并且所有类都设置了标志。 我仍然可以毫无问题地运行我的应用程序。

现在我不知道如何让我的新按钮打开旧应用程序的 mainViewController - 这个应用程序有 MainWindow.xib(包含一个窗口和一个导航控制器)。此 MainWindow 在旧项目中设置为 Main Interface。 appMainDelegate 文件中也有一些初始化调用。我在哪里可以在我的应用程序中调用它们?

谁能告诉我需要做什么。我有一个想法,我将只添加一个新的 UIViewController 到我的情节提要中。这将是旧应用程序的起点,并且一切都将像以前一样工作。或者我是否必须在我的故事板中创建更多控制器(对于每个 xib)?这是我不知道该怎么做的地方。任何帮助都非常感谢。谢谢

【问题讨论】:

    标签: iphone ios5 ios4 storyboard integration


    【解决方案1】:

    尝试执行以下操作,类似或类似的任何操作都可以:

    在按钮的方法中(你称之为新按钮的那个)让它执行以下代码:

    OldAppMainViewController *controller = [[OldAppMainViewController alloc] init];
    //Here you can assign vallues to any properties that you might want to
    [self.navigationController pushViewController:controller animated:YES];
    

    旧的应用程序主视图控制器应该有一个带有 nub 命名函数的 init,因此它应该可以工作。如果这不起作用,请尝试以下方式:

    OldAppMainViewController *controller = [[OldAppMainViewController alloc] initWithNibName:@"OldAppMainViewController" bundle:nil];
    

    NIB 名称是不带扩展名的 .xib 文件名。

    还要确保界面生成器中的所有连接都设置正确

    【讨论】:

      猜你喜欢
      • 2017-07-23
      • 1970-01-01
      • 1970-01-01
      • 2022-01-12
      • 2015-06-15
      • 2018-07-01
      • 2014-08-08
      • 2014-11-07
      • 2011-10-15
      相关资源
      最近更新 更多