0

我找不到任何类似的问题,所以我们开始:

我正在开发一个 iOS 应用程序,该应用程序的第一个版本将只有法语版本,但我们计划在未来发布一个英文版本。在这一点上,我认为NSLocalizedString对所有文本都使用是个好主意,这样当需要英语时,应用程序就可以准备就绪。但是,我真的很想在我的代码中使用英语作为键值:

aString = NSLocalizedString(@"Yes", @"Text for positive answer");

代替

aString = NSLocalizedString(@"Oui", @"Text for positive answer");

然后我想运行 genstrings,并将 .strings 文件本地化为法语(并将其提供给翻译人员)。但如果我这样做,我怎样才能摆脱“原始”英文 .strings 文件?我在这里完全错了吗,我现在必须在我的代码中使用法语吗?

4

2 回答 2

1

您可以用英语完成整个项目,在 localizable.strings 文件中保留键的英文单词,但只保留 fr.lproj 文件夹,并在 plist 中将支持的语言设置为法语。

于 2012-03-21T16:13:05.283 回答
1

如果您正在用英语开发应用程序并将其本地化为法语,我想知道您为什么要积极阻止应用程序以英语运行。如果您的目标市场中的某些用户(我想只有法国?)更喜欢用英语运行他们的 iOS 设备,为什么要拒​​绝他们的首选语言呢?还是因为你不会做英文版的QA,所以还不想公开?

无论如何,我相信您可以通过简单地编辑项目元数据来限制支持的语言列表。在 XCode 中,支持语言列表显示在此页面上 - 只需删除英语,我相信您的英语本地化,即使它们存在于您的项目中,也不会被使用(我没有测试过,但我怀疑它会删除您现有的英文文件,它应该只是将它们从应用程序的支持语言列表中删除)

在此处输入图像描述

于 2012-03-22T09:35:10.727 回答