之前写过一篇关于Qt多语言化的文章:http://blog.csdn.net/jasonblog/article/details/5445191。
虽然在进行iOS开发的过程中,可以在Xcode里直接使用中文字符串,但总觉得有点奇怪和不舒服。
加上用户可以在iPhone设置里选择不同的语言环境,因此采取国际化手段是个不错的选择。
最重要的是,工作量不大,尤其是刚开始进行项目时就考虑到了。
这里讨论最基本的文案多语言化。
首先,为项目新增资源文件Strings File,命名为“Localizable.strings”。
选中该文件,并打开Xcode的基础信息面板,如下图View所示:
可以看见中间有Localization栏目,在此添加语言类型,比如简体中文、繁体中文、英语等:
这时候通过Finder查看目录,会发现多了zh_Hans.lproj、zh_Hant.lproj等文件,里面都有空的Localizable.strings文件。
然后,使用苹果提供的NSLocalizedString宏来替换代码中的中文字符串:
//替换前
@"取消"
//替换后
NSLocalizedString(@"取消", nil)
接着,利用genstrings工具(genstrings -o en.lproj *.m)来为刚才空的Localizable.strings文件生成内容,它会为使用NSLocalizeString宏所修饰的字符串生成映射列表。
最后,我们通过修改Localizable.strings文件来实现多语言化。