应用程序中未加载 XIB 以进行本地化?
Posted
技术标签:
【中文标题】应用程序中未加载 XIB 以进行本地化?【英文标题】:XIBs are not loaded for localization in app? 【发布时间】:2011-09-19 04:31:08 【问题描述】:我在我的应用程序中使用英语和法语的本地化。
当我使用 french
更新 XIB 时,它会生成两个 XIB,并且它还在该 XIB 的属性中显示其到 fr.lproj
文件夹的路径,Sampler/fr.lproj/MainWindow.xib
它在不同的地方为不同的 XIB 制作文件夹 en.lproj and fr.lproj
对于 Mainwindow,它位于 Sampler/fr.lproj/MainWindow.xib
对于它位于的其他文件
Sampler/Classes/fr.lproj/About.xib
但是当我运行应用程序时显示异常
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </Users/Library/Application Support/iPhone Simulator/4.3/Applications/3A0C67D1-F197-432A-9D9B-1086D0252E1C/Sampler.app> (loaded)' with name 'MainWindow''
这有什么问题?
【问题讨论】:
您是否已将本地化添加到您的项目中?在 xcode 4 中,Editor->Add Localization. 顶部有一个编辑器菜单,在文件菜单旁边。 不编辑,'编辑'。文件 - 编辑 - 查看 - 导航 - 编辑器。选择项目后,将启用添加本地化。 【参考方案1】:尝试遵循given in the link的6个步骤,如下:
-
在 Xcode 中使资源可本地化
本地化 Interface Builder 文件
将嵌入文本收集到资源文件中
翻译资源文件
将翻译导入 iPhone 应用程序
在 iPhone 设备中测试翻译
【讨论】:
【参考方案2】:检查您的 nib 是否已针对您正在构建的目标启用。
【讨论】:
以上是关于应用程序中未加载 XIB 以进行本地化?的主要内容,如果未能解决你的问题,请参考以下文章
在 xib 中定义的 SubView 中定义的 TableView 中未调用 didSelectRowAtIndexPath