2016-02-18 3 views
0

Я работаю над проектом, который не имеет storyboards. Поэтому я не могу использовать «базовую интернационализацию»локализовать UIAlertView и автономные уведомления в проекте без раскадровки

Я создал локализацию.string, затем включил локализацию для каждого требуемого языка.

Затем попытался сделать

- UIAlertView * messageBox = [[UIAlertView alloc] initWithTitle: 
                NSLocalizedString(@"title", nil) 
                message: NSLocalizedString(@"msg", nil) 
                delegate: self 
                cancelButtonTitle: NSLocalizedString(@"ok", nil) 
                otherButtonTitles: nil]; 

И для уведомления я использую NSDictionary и хранить уведомления как:

- [alertMessages setObject:NSLocalizedString(@"test_notification", nil) 
    forKey:@"6"]; 

, но он не делает каких-либо изменений при смене языка устройства. Есть ли какой-либо шаг, который я пропущу, или если есть лучший метод? любые рабочие ссылки были бы высоко оценены!

+0

показать мне название, msg и ok в файле Localizable.strings. –

+0

in localizable, строки (английский) "title" = "поздравления!"; "msg" = "Вы выполнили все уровни"; «ok» = «получил»; in localizable.strings (французский) "title" = "Félicitations!"; "msg" = "Vous avez terminé tous les niveaux"; "ok" = "COMPRIS" –

+0

Удалить приложение и очистить, чем ПРОДОЛЖИТЬ. –

ответ

1

РЕШЕНИЕ 1:

Выполните следующие действия.

  1. Clean Project
  2. Удаление приложения с устройства/Simulator
  3. Если Simulator - Восстановите его.
  4. Удалить исходные файлы (XCode> Окно> Проекты> Производные данные Удалить)
  5. Установите приложение, и оно будет работать.

Я думаю, что это просто проблема с кешем.

РЕШЕНИЕ 2:

NSLocalizedString использует Localizable.strings файл по умолчанию. Измените имя файла File.strings и повторите попытку.

NSLocalizedStringFromTable (@ "Message", @ "File");

+0

отличное решение .. 2 работал для меня! Я использовал NSLocalizedString, но NSLocalizedStringFromTable (@ «Сообщение», @ «Файл», комментарий), сделал трюк. –

+0

Мое удовольствие :) Счастливое кодирование. –

+0

отличная работа @VS: p –