我正在寻找一种方法来更改iOS设备Locale,而无需进行设置并导入一些新框架。只需一个简单的脚本即可,甚至是一段代码。我想知道是否有类似的东西:
[[NSLocale currentLocale] setLocale:@"WhateverLocale"];
答案 0 :(得分:1)
这可能会或可能不会满足您的需求,但通过应用程序当前区域设置获得编程访问权的一种方法是覆盖NSUserDefaults中的AppleLanguages
密钥。例如,要更改为法语:
[[NSUserDefaults standardUserDefaults] setObject:@[ @"fr" ]
forKey:@"AppleLanguages"];
[[NSUserDefaults standardUserDefaults] synchronize];
此方法的缺点是您需要关闭并重新打开应用程序才能使更改生效。
注意,要返回系统默认值,只需调用:
[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"AppleLanguages"];