- 查找到项目中的中文字符串并替换成对象的国际化函数调用( 使用Xcode 强大的 正则表达式)
在搜索条件里输入("[^\x00-\xff]+"),在下面替换内容里输入NSLocalizedString(1获取原有字符串的值,在替换时把原有值放入宏定义内key的位置。然后,搜索,可以看到搜索结果,点击Replace All,即可完成替换。
("[^\x00-\xff]+")
NSLocalizedString($1, comment: "")
image.png
- 生成多语言文件
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值就行了(这个应该是翻译干的事儿)。
至此,项目的国际化已经适配完成。
网友评论