Я пытаюсь использовать InAppSettingsKit для управления моими настройками.При этом используется файл Settings.bundle с файлом .plist и файлами .strings для каждого переводимого языка.
Я могу подтвердить, что перевод моих строк работает правильно вне моего приложения, используя приложение Настройка.Но когда я нахожусь в моем заявлении, перевод не происходит.
Я думаю, что это сводится к коду, подобному этому, из класса IASKSettingsReader класса InAppSettingsKit, с парой операторов журналирования, которые я считаю полезными:
- (NSString*)titleForStringId:(NSString*)stringId {
NSLog(@"%@",[_bundle localizedStringForKey:stringId value:stringId table:self.localizationTable]);
NSLog(@"%@",[_bundle localizedInfoDictionary]);
return [_bundle localizedStringForKey:stringId value:stringId table:self.localizationTable];
}
Если я правильно понимаю, это должноиспользовать таблицу с именем self.localizationTable
в качестве источника перевода.Это значение просто «Root».Это не путь к файлу Root.strings
на выбранном языке, поэтому я предполагаю, что метод localizedStringForKey:value:table:
должен использовать глобальную системную ссылку, указывающую на правильный путь.
Я подтвердил, чтоИмя файла строки - "Root.strings", с большой буквы, в том числе в файле Root.plist.
[_bundle localizedInfoDictionary]
возврат (ноль);Это делается для двух языковых настроек: английского и французского.
Я не уверен, как это отладить.Спасибо за любую помощь, вы можете дать.