iOS项目快速实现国际化
2018-04-25 本文已影响610人
makemake
项目没有提前写好NSLocalizedString,然后在项目N期后需要做国际化是一件很头痛的事情。
给大家分享一下快速实现国际化的方法:
step1:
下载工具,提取项目中的中文使用Find-Regul Expression 正则匹配 输入(@"[^"]*[\u4E00-\u9FA5]+[^"\n]*?")\s*
,找出项目中所有的中文。然后将中文复制到Excel,交给相关人员去翻译。

step2:
拿到翻译文档,将中英文整理成我们需要的格式。

step3:
整理好了多语言的翻译文档之后,如果项目没有事先写好NSLocalizedString
的宏文件,可以使用正则替换。
在Xcode使用 command+shift+F 然后选择Replace-Regul Expression 在搜索栏输入(@"[^"]*[\u4E00-\u9FA5]+[^"\n]*?")\s*
,替换栏输入NSLocalizedString($1, nil)
再点下Replace All 按钮
当然也可以使用runtime黑科技来实现,具体实现代码可以参照:Runtime快速实现iOS国际化
以及:
iOS国际化中你可能会用到的一些小技巧