如何处理部分翻译的Localizable.strings文件

时间:2015-07-20 19:20:56

标签: ios localization

我有一个 Localizable.strings(base)文件,例如以下字符串:

  

"程序hello_world" =" Hello World&#34 ;;
  " hello_world2" =" Hello World";

它正被翻译成多种语言。所以我也有以下内容:

  • Localizable.strings(中文(简体))
  • Localizable.strings(俄语)
  • 等。

现在的问题是,随着项目的增长,我们会添加越来越多的新字符串。但是,在我们发布应用程序之前,我们并不想等待翻译人员完全翻译所有字符串。因此,我们结束了 Localizable.strings(中文(简体)),其中hello_world2缺失:

  

"程序hello_world" ="你好世界&#34 ;;

默认情况下,未翻译的字符串将显示为键" hello_world2"在应用程序中。 问题:有没有办法说,如果关键字的翻译" hello_world2"不存在,请使用基本翻译吗?

其他信息:

我知道对于 storyboard 文件,如果它被部分翻译,那么它只会使用未翻译字符串的基本翻译。但是,对于其他常规 .strings 文件,同样(不错)的行为不会发生。真的在寻找一种优雅的方法来解决这个问题。

1 个答案:

答案 0 :(得分:1)

我发现应对此问题的最简单方法是使用默认字符串作为键。所以你可能有:

基地:

"Hello World" = "Hello World"; 
"Hello World 2" = "Hello World 2";

中国:

"Hello World" = "Hello World in Chinese";

如果您尚未进行任何翻译,则只需在文件中至少包含一个占位符字符串,以避免编译错误,例如:为双倍空间:

俄语:

/* Placeholder */
"  " = "  ";

这也使翻译人员的工作变得更加容易!