app有时需要同时支持多种语言,国际化分为应用名国际化和app内容国际化两部分,接下来以中英两种语言来介绍一下如何实现app国际化
一.应用名称国际化
1.首先创建一个项目,然后执行以下操作
选择语言后会有以下弹窗, 若项目中用到storyBoard并且里面的文字也需要国际化,此处要如下图勾选,然后店家Finish即可
2.创建一个Strings文件,命名为 InfoPlist.strings(此处名字不可以更改)
3.选中该文件
接下来,把所需要的语言都选中,如下图:
选中后InfoPlist.strings文件下面会出现两个文件,分别是英文和中文,如下图:
4.在两个文件中,分别写入app的英文名和中文名,key-value方式。key 为CFBundleDisplayName
运行程序后,app名称就会根据系统的语言来显示中英文
二.内容国际化
1.内容国际化和app名称国际化一样,只是创建Strings文件的时候把名字改为Localizable.strings (此名字不许随意更改)
2.把文字同样以key-value的形式分别加入到Strings文件中
注意:这两个文件里面的key要保持一致
- 使用
先导入Foundation,然后通过 NSLocalizedString 函数找到key对应的value, 这样就可以实现语言根据系统语言来切换了
三.storyBoard和xib国际化
1.xib
选择语言后,会自动形成一个key
这样就可以实现语言切换
2.storyBorad和xib操作相同