【问题标题】:application:didFinishLaunchingWithOptions: not getting called on iPad应用程序:didFinishLaunchingWithOptions:没有在 iPad 上被调用
【发布时间】:2012-09-16 13:15:54
【问题描述】:

我正在为 Retina 4 准备一个项目。它之前使用了 MainWindow.xib 文件(一个用于 iPhone,一个用于 iPad),但我已经删除了这些文件(以及项目中对它们的引用settings) 并将其替换为在应用程序的 application:didFinishLaunchingWithOptions: 方法中分配窗口。在新旧分辨率下,iPhone 上一切正常,但是当我在 iPad(模拟器和设备)上尝试时,应用程序:didFinishLaunchingWithOptions:永远不会被调用......我在方法的顶部放置了一个 NSLog 以确保它不是t 只是默默地崩溃了一些方法,但我从来没有得到日志输出。应用程序启动并变黑。我曾尝试重置模拟器,但它再次发生在设备和模拟器上并且没有效果。这发生在视网膜和非视网膜上的 iOS 5、5.1 和 iOS 6 以及设备上,因此它似乎不是操作系统或模拟器问题。完全相同的代码(通用项目)在 iPhone 上运行良好,所以我有点难过它如何混淆并忽略应用程序委托......

【问题讨论】:

  • 向我们展示您来自main.m的代码。

标签: ios ipad uiapplicationdelegate


【解决方案1】:

有多种方法可以设置 AppDelegate 类。 NIB 是一个,主程序是另一个:

main.m
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

【讨论】:

  • 是的!我是一个白痴。完全忘记了 NIB 方法绕过了应用程序委托的主要设置。这就提出了一个不同的问题:为什么它可以在没有 NIB 或 main init 的情况下在 iPhone 上运行......我怀疑小精灵会反过来破坏东西......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多