我的本地化字符串未被检测到

时间:2011-09-07 14:45:27

标签: objective-c ios xcode4

我正在尝试在Xcode 4中本地化我的字符串,但我唯一得到的是键,而不是值。

我使用NSLocalizedString(key, comment)对字符串进行了本地化。 我使用命令行中的genstrings生成了Localizable.strings文件。 我将Localizable.strings从Finder拖放到Xcode(进入Resources文件夹)。 我已经本地化了Localizable.strings并添加了相应的国家/地区。 我确保编码是UTF-16。 我为每个国家翻译了不同的Localizable.strings。 我已经重新检查过编码仍然是UTF-16。 我已经检查过Localizable.strings中的每个语句都以半冒号结尾。

仍然无法正常工作。

知道我错过了什么?

修改

这是我的Localizable.strings的一部分

/* Text displayed on the comment button if there are more than one comment. */
"CommentButtonTextPlural" = "comments";

/* Text displayed on the comment button if there is exacly one comment. */
"CommentButtonTextSingular" = "comment";

/* Text displayed on the post button. */
"CommentViewPostButtonLabel" = "Post";

/* Default text displayed in the area where the user types in a comment. */
"CommentViewWriteAComment" = "Write a comment...";

/* Error message explaining that a document isn't viewable on the user's device. */
"DocumentRendererStatusDetailedErrorText" = "This document is not viewable on this device.";

/* Message explaining that the document is downloading. */
"DocumentRendererStatusDownloadingText" = "Downloading...";

3 个答案:

答案 0 :(得分:1)

您可能将Localizable.strings文件放在错误的位置,因此它使用的是默认翻译。

当您添加新语言时,Xcode会在您的App Directory中创建一个以.lproj结尾的新文件夹(因此对于英语,它将是en.lproj),这是您的英语Localizable.strings文件所在的位置。

如果你想要一个法语,添加法语和Xcode将生成一个fr.lproj目录,这是法语Localizable.strings文件所在的位置。

根据您的描述,将它放在资源文件夹中是不正确的。

答案 1 :(得分:0)

您的本地化应如下所示:

enter image description here

并在您的桌面上:

enter image description here

答案 2 :(得分:0)

我设法让它发挥作用。

我所做的是删除Localizable.strings(来自硬盘,我没有触及位于xx.lproj文件夹中的文件)文件,这些genstrings为我创建并删除了我设备上的app文件。