我在 iPad 应用中使用 InAppSettingsKit,包括英语、德语和日语的本地化字符串。一切工作正常,但我希望能够在应用程序内切换语言,而 InAppSettingsKit 似乎不支持这一点。这是我的 showSettings 方法:
// show the inapp settings view
-(void) showSettings
{
IASKAppSettingsViewController *settingsViewController = [[IASKAppSettingsViewController alloc] initWithStyle:UITableViewStyleGrouped];
settingsViewController.delegate = self;
settingsViewController.showDoneButton = YES;
UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:settingsViewController];
[self presentModalViewController:navController animated:NO];
}
因此每次都会重新创 build 置 VC,但似乎会重新使用初始应用启动时的语言选择。
用户的语言选择会写入 [NSUserDefaults standardUserDefaults]
中我的私有(private)“语言”设置以及“AppleLanguages”数组。
旧语言信息在哪里/如何缓存?
最佳答案
这是 iOS 的标准行为,通常您不应该试图改变它。您可以使用 NSUserDefaults 中的 AppleLanguages 键(或其他键)更改它,但据我所知,当前语言在应用程序启动后始终是静态的。
关于ios - InAppSettingsKit 具有多种本地化版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14091774/