在Resources中移动.lproj文件

时间:2012-07-31 16:25:10

标签: objective-c xcode macos localization internationalization

我正在尝试开始一个项目的本地化,我已经有一个英文版的Localizable.strings了。我正在尝试将法语添加到该文件中,正如我所期望的那样创建一个fr.lproj文件夹。但是,它将它放在我的项目根目录中,我希望它在我的项目的Resources目录中。

Xcode似乎没有兴趣让我移动文件,如果我在Finder中移动它,它会在Xcode中按预期变红,但不允许我点击找到该文件。

我尝试在Finder中移动它,然后在文本编辑器中编辑project.pbxproj,在那里提到Resources/的唯一一行前面添加fr.lproj/Localizable.strings,这已经奏效,但是在这之后,项目的目标在Xcode中也变为红色,构建应用程序并没有改变这一事实。很奇怪..任何想法可能会发生什么,或者如何实现这一目标?

1 个答案:

答案 0 :(得分:3)

这可能是一个真正的痛苦。在尝试纠正不需要的文件位置时,我甚至让XCode崩溃了。我发现最好的方法是创建本地化文件(无论是.strings还是.xib)作为XCode之外的源语言版本的副本,然后将其拖放到XCode中。如果你这样做,那么XCode将正确显示它,你的目标'Build Phases>复制捆绑包资源设置将包含其正确的位置。我不知道为什么你的目标显示为红色,也许你可以查看Copy Bundle Resources以防出现任何错误,或者选择你的项目并点击验证设置以防你还没有这样做。

此外,如果您在模拟器中进行测试,请注意how XCode does not clean up the files in your app bundle - 您可能需要删除该应用并再次运行以确保它与您的新位置一起使用。