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文件的汉化已经完成。