iphone - Xcode 4 - viewDidLoad 问题

标签 iphone xcode ios ipad

是否有其他人在 Xcode 4 中遇到 viewDidLoad 被调用两次的问题?我在 Xcode 3.2 和 Xcode 4 中运行了同一个项目,但它只在 Xcode 4 中起作用。

最佳答案

Apple Developer forums 上对此进行研究后,似乎在某些情况下 Xcode 4 会创建有问题的 Interface Builder NIB。结果是应用程序的 rootViewController 被加载了两次,这真的把事情搞砸了。在 Xcode 3 中加载的相同项目不会出现此问题。

在我的通用应用程序中,它只影响 iPad NIB。 iPhone 很好。

我能够通过以下方式解决这个问题:

  • 在 Interface Builder 中删除 rootViewController 连接(这会导致应用加载 window.rootViewController = nil)
  • 在主 Controller (被加载两次的那个)的 viewDidLoad 中,我然后手动分配 appDelegate.window.rootViewController = self

到目前为止,这似乎达到了预期的效果。

关于iphone - Xcode 4 - viewDidLoad 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5278465/

相关文章:

swift - `swift package generate-xcodeproj` 失败,返回 "Swift does not support the SDK"

xcode - 无法在 Xcode 6.1 中看到构建阶段和常规设置

ios - 获取存储在应用程序文档文件夹中的文件内容

ios - 适用于 iOS 的 Firebase 云消息传递通知未显示已打开和分析

ios - 如何将键盘工具栏添加到 SwiftUI 中的特定文本字段?

c# - 如何通过 MonoTouch 获得关于我的应用程序被关闭/发送到后台的通知?

iphone - PNG 和 UI 图像优化

iphone - 将 iPad 应用程序中的文本数据保存为可以从 "notes app"打开的注释?

ios - 我们可以使用企业帐户进行苹果 Beta 测试,我们没有开发者帐户吗?

ios - 应用程序窗口在应用程序启动结束时应该有一个 Root View Controller