我找不到任何类似的问题,所以我们开始:
我正在开发一个 iOS 应用程序,第一个版本将只有法语,但我们计划在未来发布英文版本。在这一点上,我认为对所有文本使用 NSLocalizedString
是个好主意,这样应用程序就可以在需要英语时准备就绪。但是,我真的很想在我的代码中使用英语作为键值:
aString = NSLocalizedString(@"Yes", @"Text for positive answer");
代替
aString = NSLocalizedString(@"Oui", @"Text for positive answer");
然后我想运行 genstrings,并将 .strings 文件本地化为法语(并将其交给翻译人员)。但是如果我那样做,我怎样才能摆脱“原始”英文 .strings 文件呢?我在这里完全错了吗,我现在必须在我的代码中使用法语吗?
最佳答案
如果您使用英语开发应用程序并将其本地化为法语,我想知道您为什么要主动阻止该应用程序以英语运行。如果您的目标市场(我想仅限法国?)中的某些用户更喜欢以英语运行他们的 iOS 设备,为什么要拒绝他们的首选语言?还是因为您不会对英文版本进行 QA,因此不想公开它?
无论如何,我相信您可以通过简单地编辑您的项目元数据来限制支持的语言列表。在 XCode 中,支持语言列表显示在此页面上——只需删除英语,我相信您的英语本地化,即使它们存在于您的项目中,也不会被使用(我没有测试过,但我怀疑它会删除您现有的英语文件,它应该只是将它们从应用程序支持的语言列表中删除)
关于ios - 如何使用英语以外的语言,但仍然使用英语的 NSLocalizedString?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9808426/