Ios 强制NSLocalizedString更改语言-不工作

Ios 强制NSLocalizedString更改语言-不工作,ios,objective-c,localization,nslocalizedstring,nslocale,Ios,Objective C,Localization,Nslocalizedstring,Nslocale,我想提及: 首先,给出了一种更改语言的方法,我使用了它,它是有效的,但它需要两次重新启动应用程序才能接管应用程序的更改。 我想做一些事情,只要按一下按钮,我的语言就会改变 [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"de", nil] forKey:@"AppleLanguages"]; 使用此->[

我想提及: 首先,给出了一种更改语言的方法,我使用了它,它是有效的,但它需要两次重新启动应用程序才能接管应用程序的更改。 我想做一些事情,只要按一下按钮,我的语言就会改变

[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"de", nil] 
                                          forKey:@"AppleLanguages"];

使用此->
[[NSUserDefaults standardUserDefaults]同步]

编辑的帖子

将此宏置于Prefix.pch中:

#define currentLanguageBundle [NSBundle bundleWithPath:[[NSBundle mainBundle] pathForResource:[[NSLocale preferredLanguages] objectAtIndex:0] ofType:@"lproj"]]
如果需要本地化字符串,请使用:

NSLocalizedStringFromTableInBundle(@"GalleryTitleKey", nil, currentLanguageBundle, @"")
对于设置,请使用此选项,因为您已经在使用:-

[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"de", nil] 
                                          forKey:@"AppleLanguages"];

我也在这样做。但是,即使两次之后观察到反射Launches@Mrug-编辑了这篇文章