1.app本地内容国际化网络
①在项目中新建一个New File ---> iOS Resource -> String File ---> 命名为Localizable(之因此命名为Localizable纯粹是方便系统查找,可直接自行编译,固然也能够命名为其余,只不过须要再链接,为了省事就叫Localizable...)app
②选择Localizable.strings文件 ---> 点击右侧按钮Localize... spa
③选择项目 ---> Project ---> Info ---> Localizations ---> 点击+按钮添加须要支持的语言 ---> 选择须要国际化的文件code
④在Localizable.strings(English)和Localizable.strings(xxx)添加键值对,格式以下:orm
English: "loginButtonTitle" = "Login";blog
Chinese: "loginButtonTitle" = "登录";图片
⑤在项目中使用,格式以下:资源
[loginButton setTitle:NSLocalizedString(@"loginButtonTitle",nil) forState:UIControlStateNormal];
2.app图片(资源)国际化string
步骤与 1.app本地内容国际化 相同it
在项目中使用,格式以下:
self.imageView.image = [UIImage imageNamed:NSLocalizedString(@"imageViewName", nil)];
3.app项目名称国际化
①在项目中新建一个New File ---> iOS Resource -> String File ---> 命名为InfoPlist
②选择Info.plist文件 ---> 添加键值对Bundle display name
③在InfoPlist.strings(Englist)和InfoPlist.strings(xxx)添加键值对,格式以下:
English: CFBundleDisplayName = "Tencent";
Chinese: CFBundleDisplayName = "腾讯";
4.app网络文字国际化
1 //获取当前系统的首选语言 2 NSArray *array = [NSLocale preferredLanguages]; 3 //获取当前系统的语言 4 NSString *language = [array firstObject]; 5 NSLog(@"%@",language); 6 7 8 //iOS9,iOS9如下没有_US 9 if ([language isEqualToString:@"en_US"]) 10 { 11 NSLog(@"英语"); 12 } 13 else if ([language isEqualToString:@"zh-Hans-US"]) 14 { 15 NSLog(@"简体中文"); 16 }
5.xib&StroryBoard国际化