iOS Swift 国际化

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

在搜索条件里输入("[^\x00-\xff]+"),在下面替换内容里输入NSLocalizedString(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值就行了(这个应该是翻译干的事儿)。

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

你可能感兴趣的:(iOS Swift 国际化)