iOS本地化

一.Storyboard本地化

1.首先在Project视图下,点击Localizations部分的那个加号,选择你要添加的语言


2.然后会弹出来一个窗口,把红框部分的改成图中所选的选项,如果选择的是Localizable Strings,需要把后缀名改成.StoryBoard,后面会提到修改的方法


3.点击finish后,可以看到Storyboard旁边多了个可以展开的三角,点击展开,就能发现多了一个Storyboard文件出来,这个就是需要添加本地化的Storyboard,在这个Storyboard中把像label或者button上的文字修改成需要的语言就完成了storyboard本地化的工作


4.补充一下如果第二步选择的是Localizable Strings的修改办法

选中创建的Strings文件(还是在Storyboard展开后的地方),然后在右边的file inspector窗口找到Localization部分,找到新添加的Localizable Stringswen文件,点击它然后将类型更改为Interface Builder Cocoa Touch Storyboard

 

二.字符串的本地化

字符串的本地化要使用到NSLocalizedString这个宏,作用是寻找当前系统语言对应的Localizable.strings文件中的某个key的值

NSLocalizedString(@"somekey",nil);

第一个参数是key的名称,第二个就是key对应的值,就是需要本地化的字符串,第二个参数在使用这个宏的时候直接设为nil,在后面用genstrings命令生成Localizable Strings后再填上去

你需要把你项目中所有需要加入本地化字符串的地方都加上NSLocalizeString这个宏,这样在使用genstrings命令的时候才能生成包含对应key的Localizable Strings文件。

然后进入终端,cd到项目的目录,输入命令:genstrings xxx.m,xxx.m就是你添加了NSLocalizedString()的文件,注意genstrings命令后面可以跟多个文件的名字,将所有修改了得.m文件名跟到,回车后就能在项目文件夹找到一个Localizable.string文件,把他拖到项目中。


看上去是长这样的


等号左边就是你之前用NSLocalizedString填进去的key,右边就是这个key对应的值

然后在右边的file inspector点击localize,在弹出的窗口选择语言


然后会看到刚才拖进项目的Localizable.strings也能展开了,修改新添加的Localizable.strings,把key对应的值改成你想要得,就完成了字符串的本地化工作,切换系统语言后,项目内就能显示对应的文字了


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值