Как загрузить правильный локализованный файл?

У меня есть список, который я локализовал. Как правильно загрузить лист?

Прямо сейчас я использую этот код:

NSArray *numbersArray = [[NSArray alloc] initWithContentsOfFile:
      [[NSBundle mainBundle] pathForResource:@"Numbers" ofType:@"plist"]];

На что мне нужно изменить свой код, чтобы загрузить локализованный plist?

1 ответ

Решение
NSArray *numbersArray = [[NSArray alloc]
   initWithContentsOfFile:
    [[NSBundle mainBundle] pathForResource:@"Numbers" ofType:@"plist"]];

Это должно работать при условии, что у вас есть следующий макет пакета:

MyApp.app
 // no Numbers.plist here
.....
en.lproj/
    Numbers.plist // english-version
fr.lproj/
    Numbers.plist // french-version

Важно то, что у вас нет Numbers.plist файл на корневом уровне (он же нелокализованный уровень) пакета, поскольку, если вы это сделаете, этот Numbers.plist всегда будет иметь приоритет над локализованной версией (из соображений производительности).

Другие вопросы по тегам