ios国际化

1、 info.plist 中添加一对 key: Application has localized display name value: YES

2、target中添加Localization的语言种类

3、创建InfoPlist.strings 文件 点击右侧国际化按钮、添加响应语言种类

CFBundleDisplayName: 项目名称
提示语
NSMicrophoneUsageDescription                  麦克风权限
NSCameraUsageDescription                         相机权限
NSPhotoLibraryUsageDescription                  相册权限
NSBluetoothPeripheralUsageDescription       蓝牙权限
NSSpeechRecognitionUsageDescription      语音转文字权限
NSCalendarsUsageDescription                      日历权限
NSLocationWhenInUseUsageDescription      定位权限
NSLocationAlwaysUsageDescription            定位权限

4、团队开发
默认加载的国际化文件:Localizable.strings 用 NSLocalizedString(key,comment) 第一个参数去对应语言的文件中取对应的字符串,第二个参数将会转化为字符串文件里的注释,可以传nil,也可以传空字符串@""。

团队开发自己定义文件名:(Custome.strings)且用 NSLocalizedStringFromTable(key, table, comment) table即为自己创建的文件名(Custome.strings

5、另类 storyboard国际化

首先我们需要创建一个英文的storyBoard/xib文件,在 en.lproj 文件下。然后,需要使用命令行来操作:
1. 将.storyBoard/ .xib文件 中的文字提取,另存为 .strings文件。
ibtool --generate-strings-file MainViewController.strings MainViewController.xib
2. 将 MainViewController.strings 拷贝到 zh-Hans.lproj 目录下,然后汉化该文件中的文字
3. 执行命令,根据英文的 .storyBoard/ .xib文件 和 .strings汉化文件 生成一个汉化后的 .storyBoard/ .xib 文件
ibtool --strings-file zh-Hans.lproj/MainViewController.strings --write zh-Hans.lproj/MainViewController.xib en.lproj/MainViewController.xib
4. 将生成的这个.storyBoard/ .xib 文件添加到项目中的 zh-Hans.lproj 分组下,注意要选择 Add to targets
5. 选择 File -> Info -> Localization 为对应的语言
至此,storyBoard/ xibxib文件的汉化已经完成。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容