我有一个表视图和2个静态组,其中一个包含语言,我想在我的应用程序设置中有2种语言英语和法语,当用户选择英语时,整个设置更改为英语和用户选择法语一切都改为法语你能不能帮助我,我看了一些样本,但我不知道如何设置,我应该在哪里设置代码,如何将代码连接到我的复选标记单元格! / p>
提前致谢!
这是我的设置图片:
答案 0 :(得分:0)
首先从这段代码中获取语言代码
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *languages = [defaults objectForKey:@"AppleLanguages"];
NSString *currentLanguage = [languages objectAtIndex:0];
2)制作本地化字符串文件
3)使用此NSLocalizedString(@"WelcomeKey", @"")
示例:
NSString *example=@"";
if([currentLanguage isEqualToString:@"en"])
{
example = NSLocalizedString(@"WelcomeKey", @"Engliah");
}
else {
example = NSLocalizedString(@"WelcomeKey", @"french");
}
答案 1 :(得分:0)
myLanguageIndicator
(在NSUserDefaults中)将保留您当前的语言,并且在您设置语言时将分别更改。假设您的默认语言值为“fr”。这意味着您将在viewWillAppear中使用fr.plist(或其他任何名称)。并且“titleLabel”是您的一个控制器中标题标签的出口。
在另一个默认对象中,您保留了fr.plist的字典(谷歌如何将plist加载到字典中)。
然后你说:
if ([myLanguageIndicator isEqualToString:@"fr"]){
titleLabel.text = [myFrenchDictionary objectForKey:@"titleLabel"];
... ... ...change here all your outlets to french values
}
else{
titleLabel.text = [myEnglishDictionary objectForKey:@"titleLabel"];
... ... ...change here all your outlets to english values
}
当您选择语言时,只需将默认字符串对象myLanguageIndicator
更改为@"fr"
或@"eng"
,具体取决于您选择的语言。