我有下面的代码来切换语言运行库:如何在IOS中在运行时切换到语言后获取本地化故事板字符串?
-(void) switchToLanguage:(NSString *)lang{
self.language = lang;
[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:self.language, nil]
forKey:@"AppleLanguages"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
而且我有一个检索本地化字符串辅助函数:
+(NSString *) getLocalizedString:(NSString *)key{
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
NSString *path = [[NSBundle mainBundle] pathForResource:@"Localizable"
ofType:@"strings"
inDirectory:nil
forLocalization:appDelegate.language];
NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:path];
return [dict objectForKey:key];
}
这是工作。我的故事板也是本地化的,但是当我切换到另一种语言时,它们不会改变。
如何获取故事板字符串的本地化值?
您使用的基地国际化或为每种语言单独的故事板? – 2014-10-21 21:38:26
我正在使用Base内部化。 – Burak 2014-10-21 21:49:37