美文网首页iOS Developer
iOS利用runtime进行快速国际化

iOS利用runtime进行快速国际化

作者: xiao彰 | 来源:发表于2017-07-21 13:55 被阅读0次

最近几天公司要求对一个项目进行国际化的操作,然后一想到那么多页面,那么多文字要替换,头都大了,如果一个一个得去替换,虽然时间上可能不会花太久,但是作为一个有理想的程序员,怎能做如此重复的单一的东西。

然后开始分析问题:怎么样进行语言国际化操作会更加简单,快捷。

一般来说,文字都是在label上的,而进行国际化操作的代码一般是NSLocalizedString(key, comment),如果能在每个label setText的方法里面加进去的话就可以一次性地解决所有label的文字国际化了,然后我突然想到:用iOS的runtime的特性来重写UILabel的setText:的方法,然后在替换的方法里面进行国际化的操作就好了,一步到位。

当然事先还是要先在app内配置好国际化的环境

3分钟实现iOS语言本地化/国际化(图文详解)

然后准备好runtime替换系统方法

iOS开发--Runtime黑魔法,替换系统类方法及属性

然后就可以了,当然还有一些其他的东西的国际化,但是这已经可以替换相当多的情况了,其余的情况你可以自己手动替换,当然也可以像我这样通过runtime的特性来进行快速替换

相关文章

网友评论

    本文标题:iOS利用runtime进行快速国际化

    本文链接:https://www.haomeiwen.com/subject/kfaskxtx.html