3

我有一个在 xcode 4.5 中创建的项目,目标 ios 为 5.0,我使用了 Base Internationalization。Base Internationalization 将 nib 文件移动到 Base.lproj。

该项目在运行 ios 6 的 iPhone 4 和运行 ios 6 的 iPad 3 上运行。但是当我尝试在运行 ios 5.1.1 的 iPad 1 上运行它时会显示此错误。在目标的 Build Phase 部分,nib 文件显示为红色。

当我尝试将 nib 文件添加到 Build Phases 捆绑资源时,它们会添加但它们仍然是红色的(未找到)。我已经尝试了所有我知道的方法来将 nib 文件添加到包资源中。我怎样才能做到这一点?

4

2 回答 2

2

Base Internationalization 仅在 iOS 6 中受支持。它会在 iOS 5 或更低版本尝试加载 Xib 时导致崩溃。

注意:奇怪的是,在带有 iOS 5 的模拟器上运行是可以的。那应该是个bug。

在发布我的应用程序后,我详细介绍了我的经验:http: //samwize.com/2012/11/22/warning-do-not-use-base-internationalization-in-ios-5/

于 2012-11-22T15:59:25.970 回答
0

我不知道英语(en)也必须本地化。当我本地化英语时,我能够将 nib 文件加载到包中。

我仍然收到'NSInternalInconsistencyException',原因:'无法在包中加载NIB:'NSBundle(已加载)',名称为'MainViewController_iPad''

但至少现在这不是因为 nib 文件不在捆绑包中。

于 2012-10-04T23:46:10.123 回答