有的时候我们需要使app适应多种语言,供给不同的国家不同语言的人去使用,这时我们就需要配置多语言,开始吧。
1. 设置要适应的语言
在工程中新建
接下来创建,名称必须是Localizable.strings!!!!!
(当然了app 的名字一定也需要多语言,只需要把这个名字改成InfoPlist.strings就OK了)
创建好之后,会在左侧看到这个
点击工程名,点击info,看到Localizations
点击加号,添加你想要支持的语言,在这里我添加了一个中文简体和中文繁体。
点击刚才创建好的文件
选择刚才添加过的语言之后,Localize
将右侧的语言都选中
这时候你看左侧的文件,就会有下拉箭头了,这时候多语言的配置就算做完了。
2. 多语言内容的格式
前面的是引用时候的KEY,后面的就是你要写的内容,标点符号不要弄成中文,后面记得加分号,别的没什么了,按格式写就行了。
例:
(app名字多语言需要固定的写法,看图)
3. 在代码中使用
在需要的地方用NSLocalizedString(@"####", nil)去引用,#的地方填写你要的内容的KEY就行了。
[titleView setTitle:NSLocalizedString(@"HOST_ADD_TITLE", nil)];
就是这么简单,完成了,将手机的语言切换一下看看吧!
补充!!!!
iOS10更新后 需要有请求权限的描述类似于 定位 相机什么的。当然 这里也需要配置多语言,步骤如下
在infoplist中添加字段,在这里我就不说了,第一步选中infoplist
这时候就会显示XML的key和value,将key的值在 InfoPlist.strings里面做国际化操作即可让提示产生多语言的效果。
在InfoPlist.strings(Base)中添加:
/*权限声明*/
NSPhotoLibraryUsageDescription = "Used to open photos";
NSCameraUsageDescription = "Used to open camera";
在InfoPlist.strings(Chinese(Simplified))中添加:
/*权限声明*/
NSPhotoLibraryUsageDescription = "用于打开相册";
NSCameraUsageDescription = "用于打开相机";