github仓库地址:App国际化
前言
因为我看的书里面提到国际化,而且我最近把手机上的语言更改成了英文,有很多App换成了英文名,比如微信。所以我开始学习国际化,虽然国内的App大多数很少需要国际化,但是目光不能短浅,还是要学习丰富自己。(日常鸡汤句)
这里不妨给大家展示一下我的手机界面,系统语言分别为英文和中文对比。
大家可以进行对比,是否这些App本身如此优秀,而在细节上也更加完美呢?
那你是否也想让自己研发的App打上国际化的标签呢?
快动动手指跟我一起做吧~
正文
1.支持语言一览
在开始之前,我们需要了解,实际上,OC可能并不支持所有的国家和语言,所以我们要获取其支持的国家和语言。也能获取到当前的语言。
//返回系统所支持的全部国家和语言的集合
NSArray *locales = [NSLocale availableLocaleIdentifiers];
//遍历数组的每个元素,一次获取所支持的所有NSLocale
for (int i = 0; i < locales.count; i++) {
NSString *localeId = [locales objectAtIndex:i];
NSLog(@"%@",localeId);
}
//获取当前的Locale
NSLocale *curLocale = [NSLocale currentLocale];
NSLog(@"当前Locale:%@",curLocale.localeIdentifier);
其中,NSLocale还提供了ISOCountryCodes,ISOLanguageCodes两个类方法获取ISO标准支持的所有国家和语言代码。
2.国际化界面设计文件
新建一个Single View Application。接下来为该应用增加简体中文对应的本地文件夹,英文也会有对应的文件夹,这也是为什么后面可以添加两张相同名称的图片的原因,因为存放于不同的文件夹中。
步骤如下。