NSLocalizedString适用于模拟器,但不适用于设备

时间:2011-11-03 19:31:16

标签: cocoa-touch nslocalizedstring localizable.strings

我无法让NSLocalizedString在我的iPad设备上运行。我在模拟器上没有任何问题,如果我改变语言,那么一切都按计划进行。 但是当我在我的设备上运行它时,我收到了这样的消息:

  

在CFBundle 0x238260包的字符串表“Localizable”中找不到可本地化的字符串“Current”

此消息来自我的启动参数“-NSShowNonLocalizedStrings Yes”

我尝试将localizable.strings更改为Localizable.strings,因为该设备区分大小写,而且我也清理了我的构建,但没有用。

关于什么可能出错的任何想法?

编辑: 我正在myAppDelegate上的didFinishedLuanching检查文件Localizable.strings的存在。在模拟器上文件确实存在,但在设备上我只是得到null ..我检查了复制资源操作并且包含了文件。 / p>

第二次编辑:好的,正在使用小写“l”复制文件,即使我将项目上的文件更改为大写文件...嗯

2 个答案:

答案 0 :(得分:2)

好的我明白了..在Xcode上,Localizable.strings文件被定义为默认(本地化字符串文件),看起来像这样自动将文件更改为小写l,但具有讽刺意味的是设备上寻找大写的文件。我将文件类型更改为纯文本(请参阅附件),现在可以使用了。我要把它归档为bug。 enter image description here

答案 1 :(得分:0)

清理完项目后,它运行正常。