iOS Swift 国际化

  1. 查找到项目中的中文字符串并替换成对象的国际化函数调用( 使用Xcode 强大的 正则表达式)

在搜索条件里输入("[^\x00-\xff]+"),在下面替换内容里输入NSLocalizedString(1, comment: "")。此处正则表达式两边加括号的目的是为了能够在替换时用1获取原有字符串的值,在替换时把原有值放入宏定义内key的位置。然后,搜索,可以看到搜索结果,点击Replace All,即可完成替换。

("[^\x00-\xff]+")
NSLocalizedString($1, comment: "")
image.png
  1. 生成多语言文件
    Xcode自带了一个命令行工具genstrings。我们可以利用这个工具生成所需的多语言文件。
    首先,我们需要先新建所需语言的文件夹。
cd 工程目录
mkdir en.lproj
mkdir zh-Hans.lproj

然后,遍历所有.m文件,根据每个文件内的需要国际化的字符串生成key和value。

 find ./ -name "*.swift" | xargs genstrings -o en.lproj
find ./ -name "*.swift" | xargs genstrings -o zh-Hans.lproj

此时,en.lproj和zh-Hans.lproj文件夹中就应该有了相应的Localizable.string文件了。

我们把这两个文件夹拖到工程里,然后在相应的Localizable.strings文件中,修改每个key所对应的value值就行了(这个应该是翻译干的事儿)。

至此,项目的国际化已经适配完成。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容