genstrings命令与字符串本地化

之前实习的时候大概接触过字符串本地化。但是不太知道具体原理,只知道如何去使用。看完genstrings之后好像明白是怎么回事了。

字符串本地化的使用

如果有一个按钮,上面的文字在中文系统上显示为“点击”,在英文系统上显示为“Click”,我们可以这么做:

button.text = NSLocalizedString(@"click", nil);

这里的click其实相当于字典的key,然后我们维护两套字典,英文字典中有这么一行:

“click” = “Click”;

在中文字典中则是:

“click” = “点击”;

运行时,系统先判断当前的语言,然后根据这个key,到对应语言的字典中找到它的“翻译”。

先后顺序问题

按照之前我了解的思路,只要再到工程文件中创建两套字典就可以了。不过有一问题是,NSLocalizedString宏的第二个参数好像没有意义。其实这个参数是为了genstrings命令准备的。

genstrings作为“generate Localizable.strings”的简称,顾名思义,就是查找文件中的宏,然后自动生成Locali

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值