Локализация в iOS

Я пытаюсь локализовать свое приложение. Но что-то идет не так, и вместо отображения содержимого моих файлов .string. Он отображает только ключ, который я установил в NSLocalizedString. Это пример:

-(void)viewDidLoad {
    [super viewDidLoad];
    self.passwordTextField.placeholder = NSLocalizedString(@"Password", nil);
}

В моей локализации (английской) я сделал: "Пароль" = "Пароль";
В моей локализации (русской) я сделал: "Пароль" = "Пароль";

Проверил каталоги, у меня были ru.lproj и en.lproj. Но так или иначе, это не сработало.

Кто-нибудь может мне помочь?

Заранее спасибо!


person Anatoliy Gatt    schedule 23.07.2012    source источник
comment
Здравствуйте, Вы добавили язык в Project -> информационная вкладка -> Localizations?   -  person Ali Abbas    schedule 23.07.2012
comment
Ага! В настоящее время показывает мне 2 файла, локализованных на английском и русском языках. Это Localizations.string и InfoPlist.strings.   -  person Anatoliy Gatt    schedule 23.07.2012
comment
вы имеете в виду Localizable.string, а не Localization.string, не так ли?   -  person holex    schedule 23.07.2012


Ответы (3)


Этот стиль всегда служил мне хорошо...

NSString *text = NSLocalizedStringFromTable(@"text-key", currentLocale, @"");

Однако локаль должна соответствовать имени файла. Например: "en_US.strings"

person Jason Fuerstenberg    schedule 23.07.2012

Самая распространенная причина, по которой разработчики видят английский язык, а не перевод, заключается в неправильном названии файла локализации. Он ДОЛЖЕН быть Localizable.strings — пишется именно так и никак иначе.

Ничто другое не работает! Кроме того, убедитесь, что он находится в правильно названном каталоге (en.lproj, ru.lproj и т. д.).

Полное руководство находится здесь

person Localizer    schedule 31.08.2012

Информации слишком мало, и она кажется хорошей... Пожалуйста, см. это пошаговое руководство, чтобы проверить, что не так в ваших настройках (это займет всего около 15 минут...)

person ingaham    schedule 23.07.2012