iOS 7中的本地化:选择以前使用的语言设置

时间:2013-10-09 03:35:04

标签: ios ios7 nslocalizedstring

我在iOS 7中使用本地化,并且具有德语和英语的可本地化字符串文件。 当我选择相应的语言时,本地化工作是完美的。但是,如果我切换到任何其他语言,则显示基于之前的选择。

我希望它选择任何其他语言选择的英语,任何想法都将不胜感激。

2 个答案:

答案 0 :(得分:6)

AFAIK,这个行为是一个功能,但没有记录? :)

在iOS7中,用户可以设置首选语言的排序列表。例如;一个流利的德语,但不是英语的法国用户可以设置法语,德语和英语作为语言偏好。这是一个很棒的功能!!!

所以,我认为你不应该覆盖这个功能。

用户可以轻松地将英语设置为第二语言,选择第一语言,然后选择它的首选主语言。

答案 1 :(得分:2)

使用main.m中的以下检查

NSString * deviceLanguage = [[NSLocale preferredLanguages] objectAtIndex:0];
NSArray *supportedLanguages = [NSArray arrayWithObjects:@"en",@"de", nil];

if ([supportedLanguages containsObject:deviceLanguage])
   [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:deviceLanguage, nil] forKey:@"AppleLanguages"];
else
   [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"en", nil] forKey:@"AppleLanguages"];