【发布时间】:2014-04-16 12:53:52
【问题描述】:
到目前为止我已经这样做了:
但我仍然将语言设置为英语:
有人知道我是否遗漏了什么吗?
编辑:
如果我这样做:
- (void)logAllLocales
{
NSLocale *curentLocale = [NSLocale currentLocale];
NSArray *locales = [[NSLocale availableLocaleIdentifiers] sortedArrayUsingSelector:@selector(compare:)];
for (NSString *locale in locales)
NSLog(@"locale '%@' is: %@'", locale, [curentLocale displayNameForKey:NSLocaleIdentifier value:locale]);
}
结果:
‘sv’是:瑞典语’
‘sv_FI’是:瑞典语(芬兰)’
‘sv_SE’是:瑞典语(瑞典)’
我将获得三个瑞典语言环境选项,因此从技术上讲,“sv”应该可以。但我也测试了其他选项,但没有运气。
但是,如果模拟器需要重置以更改语言,那么我认为我的问题得到了解答。在启动时传入参数是不可能的。 =)
【问题讨论】:
-
hej,在模拟器(你的第二张图片)中,你有“英语”,你应该在模拟器中设置瑞典语。 (另外:只需在你的 iPhone 上试试。)
-
眼前有选项(第二张截图),随便改吧
-
好吧,我经常部署到模拟器。在每次部署之前,我通常想用一个 hoy-key 清理整个模拟器:我已将“重置内容和设置...”连接到 cmd+K。即使我通过下面指出的非常明显的方式明确设置它,这也会使模拟器重置回英语。 (设置 > 常规 > 国际)我真的希望它成为发布时传递的参数。这是一种非常乏味的每次手动操作的方式,尤其是当我目前只使用瑞典语、挪威语和丹麦语时。 =)
-
假设您本地化为“Swedish (Sweden)”,则需要使用
sv-SE或(Swedish (Sweden))作为键,否则将不匹配,因为您的本地化设置为sv-SE而不是不仅仅是sv! -
此外,在这种情况下,不要指望运营商文本会发生变化 - 这需要重新启动模拟器。当您将参数传递给启动时,它只会更改应用程序的区域设置和语言,而不是整个系统。还有其他(可搜索的)方法来更改模拟器的整体语言
标签: ios objective-c ios-simulator