Ответ 1
Вы можете получить все строковые ключи, прочитав в English.lproj/Localizable.strings в качестве словаря и извлеките его ключи:
NSString *stringsPath = [[NSBundle mainBundle] pathForResource:@"Localizable" ofType:@"strings"];
NSDictionary *dictionary = [NSDictionary dictionaryWithContentsOfFile:stringsPath];
Чтобы получить перевод на каждый язык, вы можете перебирать языки для каждого английского ключа и использовать NSLocalizedStringFromTableInBundle
:
for (NSString *language in [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleLanguages"]) {
NSBundle *bundle = [NSBundle bundleWithPath:[[NSBundle mainBundle] pathForResource:language ofType:@"lproj"]];
NSLog(@"%@: %@", language, NSLocalizedStringFromTableInBundle(@"Testing", @"Localizable", bundle, nil));
}