您的位置:首页 > 移动开发 > IOS开发

ios获取当前语言

2015-06-30 16:42 651 查看
上代码:

+ (NSString*)getPreferredLanguage

{

NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults];

NSArray * allLanguages = [defaults objectForKey:@"AppleLanguages"];

NSString * preferredLang = [allLanguages objectAtIndex:0];

NSLog(@"当前语言:%@", preferredLang);

return preferredLang;

}

ios系统中,本地语言是存在NSUserDefaults中的一个Key-Value;其中Value是一个数组;数组的第一个元素就是当前语言;所以我们只需要取出数组的第一个元素即可;

下面是打印出当前设备支持的所有语言:(我设置的时英语,所以第一个元素就是en,其中zh-Hans是简体中文,zh-Hant是繁体中文。。。

(

en,

"zh-Hans",

fr,

de,

ja,

nl,

it,

es,

pt,

"pt-PT",

da,

fi,

nb,

sv,

ko,

"zh-Hant",

ru,

pl,

tr,

uk,

ar,

hr,

cs,

el,

he,

ro,

sk,

th,

id,

ms,

"en-GB",

ca,

hu,

vi

)

在判断时,如果值是zh-Hant 则代表iphone 当前的地区语言是 traditional chinese ,即繁体中文

如果值是 zh-Hans 则代表iphone 当前的地区语言是 simple chinese , 即简体中文。

通常应用在app启动初始化时,根据ios当前的地区语言,来启用app的ui语言版本显示。

e.g

//zh-Hant = Traditional Chinese zh-Hans = Simple Chinese

if([lang isEqualToString:@"zh-Hant"] || [lang isEqualToString:@"zh-Hans"]){ // 当系统语言是中文或繁体中文时

[WifiTools saveKey:SYS_CONFIG_LANG_SETTING value:@"CN"];

}else{ //其它语言的情况下

[WifiTools saveKey:SYS_CONFIG_LANG_SETTING value:@"ENG"];

}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: