如何将本地化的.strings文件添加回Xcode?

8
我有一个.strings文件,其中有多种语言的本地化版本。 我想将其添加到我的Xcode项目中。 你应该如何让Xcode正确引用这些文件?我已经尝试了以下方法:
  • 将英文版本的.strings文件(在English.lproj中找到)拖到Xcode中,并希望它能自动获取其他本地化版本的文件 - 但它没有。
  • 将所有5个本地化版本的.strings文件(在English.lproj,es.lproj等中找到)拖到Xcode中,假设Xcode会创建带有各种本地化版本的单个文件引用 - 但它会崩溃。
  • 将每个.lproj文件夹拖到Xcode中,希望它能理解每个文件夹中的文件都是相同的文件,只是进行了本地化处理 - 但不行。
  • 将本地化的英语版本.strings文件拖到Xcode中,然后添加一个已存在的本地化,Xcode会警告它将覆盖该文件,但不提供使用现有文件的选项。
更新:已向苹果提交错误报告:#10181468。
2个回答

14

截至Xcode 4.6版本,最简单的方法是将本地化文件(.strings文件,而不是它所在文件夹)从Finder拖到Xcode项目树中。请精准拖动到.strings组的顶部,而不是底部或组内,否则后者会导致Xcode崩溃。


1
哇,这很简单,而且还有效,但我不明白为什么。那个组里只有两个文件,所以这是一个非常小的变化。谢谢! - meaning-matters
使用此方法来解决向我的项目添加文件时Xcode崩溃的问题,谢谢! - danielbeard
1
我想补充一下,如果.strings组下面没有另一个对象,Xcode仍然会崩溃。我的解决方法是在.strings组下面添加一个临时组。 - danielbeard

7
添加原始文件(只需文件,不需.lproj文件夹),然后使其本地化,添加所有需要的语言,Xcode会为每种语言创建相应的.lproj文件夹并复制您的原始文件。
之后,您可以用已经翻译好的文件覆盖每个被复制的文件(无论是文件名还是内容)。
在添加文件时,请不要忘记将原始文件的格式设置为UTF-16。

1
这就是我最终所做的。我无法想象本地化文件应该如何重新进入Xcode。向苹果公司提交一个Radar。 - memmons
1
当本地化文件处于版本控制下时,这种方法无法正常工作。XCode 尝试再次添加它们并失败了 :-( - PerfectGamesOnline.com

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接