当我们创建一个Xcode项目时,Xcode默认会将项目的本地化设置为“Base”,这意味着所有文本都是以英语为基础的,而没有进行本地化。
本地化步骤
实现本地化的步骤如下:
-
在Xcode中创建一个新项目,选择“Single View App”模板。勾选“Use Storyboards”和“Use Auto Layout”选项。
-
打开Storyboard文件,将UILabel控件添加到视图中。选中标签并在属性检查器中输入“Welcome”作为文本。
-
在“Project Navigator”中右键单击项目名称,选择“New File”选项。选择“Resource”选项卡,然后选择“Strings File”模板。输入“Localizable.strings”作为文件名。
-
打开“Localizable.strings”文件,并添加以下代码:
/* Welcome message */ "welcome_message" = "Welcome";
这将创建一个本地化字符串key为"welcome_message",对应的值为"Welcome"。
-
回到Storyboard文件中,选中UILabel控件,打开属性检查器,将文本更改为“welcome_message”。这将告诉Xcode在运行时使用"welcome_message"对应的本地化翻译来显示UILabel中的文本。
-
在“Product”菜单中选择“Scheme”选项,然后选择“Edit Scheme”选项。在“Run”选项卡中,将“Application Language”设置为您想要测试的本地化语言。
-
重新构建并运行您的应用程序。在运行时,应用程序将自动加载与所选本地化语言匹配的.strings文件。在本例中,UILabel将显示"欢迎"(如果您选择的是中文本地化)或“Welcome”(如果您选择的是英文本地化)。
优化工作
如果您需要本地化的语言较多,并且每种语言有大量需要本地化的字符串,那么本地化的过程可能会非常繁琐。
一般来说,都会通过以下手段进行优化:
- 使用工具进行翻译:有很多工具可以帮助您自动翻译需要本地化的字符串,例如Google Translate、Microsoft Translator等。这些工具可以快速将您的字符串翻译成多种语言,减少手动翻译的工作量。
- 使用翻译服务:有一些专业的翻译服务可以帮助您自动翻译字符串,并提供高质量的翻译服务。这些服务可以将您的字符串发送到一个团队,他们会使用他们的专业知识进行翻译,并确保翻译的质量。
- 使用本地化工具:有一些工具可以帮助您管理本地化过程,例如Crowdin、POEditor等。这些工具可以帮助您组织和管理需要本地化的字符串,并提供自动化的翻译和本地化功能,使本地化过程更加高效和简单。
上述1,2是常规手段,但不同公司和组织的本地化需求可能不同,因此自行开发本地化工具是一种可行的选择。自行开发本地化工具可以帮助您满足特定的本地化需求,并提供更多的自定义功能和灵活性。
值得注意的是,您需要考虑开发和维护本地化工具所需的成本和时间,以及与其他本地化工具相比的优劣势。
本地化工具
作者利用业余时间开发一个本地化工具,它可以管理所有需要本地化的字符串,并提供自动化的翻译和本地化功能。
开源地址:translate-tool
主要功能:用于文字的在线翻译以及文件的离线翻译
- 在线翻译:使用google提供的翻译API,支持文字翻译的文档翻译
- 离线翻译:构建一个离线的翻译包,可以自定义数据格式,根据特定的规则支持文档翻译
- 文档转换:将处理后的的excel文件转换为“Localizable.strings”文件
主界面:
文档翻译界面: