XCode - локализацията на iOS не е взета под внимание

Разгледах различни отговори тук, но не мога да разбера какво се случва.

Моят iPhone е на френски. Имам само една цел. Отидох в настройките на проекта и казах „Добавяне на локализация“ и добавих френски.

Уверих се

  • изчистете/възстановете приложението ми няколко пъти
  • проверете дали регистрационният файл за изграждане показва копието на файловете
  • премахнете приложението от телефона ми
  • стартирайте както на телефона (8.1), така и на симулатора с френски
  • проверете дали квадратчетата за отметка са отметнати в настройките за цел/проект

Краен резултат: Storyboard е локализиран, но програмируемите низове не са (NSLocalizedString("xxx", nil) показва xxx вместо yyy)

Някаква идея ? Ето няколко екранни снимки на моята конфигурация

журнал за изгражданеproject files fr/localized.strings файлови настройки

Благодаря


person Thomas    schedule 11.02.2015    source източник
comment
На симулатора или устройството? Има някои грешки с локализацията на симулатора след новия XCode.   -  person Lord Zsolt    schedule 11.02.2015
comment
това се случва и на двете   -  person Thomas    schedule 11.02.2015
comment
Какъв е езикът на iPhone (Настройки-›Общи-›Език и регион).?   -  person Lord Zsolt    schedule 11.02.2015
comment
френски и франция. и моят сценарий е преведен!   -  person Thomas    schedule 11.02.2015
comment
Не съм преживявал нещо подобно. Вие някъде в InfoPlist трябва да зададете какъв .string файл да използвате за локализация. Винаги съм използвал Localizable.strings и никога не съм имал проблем с него.   -  person Lord Zsolt    schedule 11.02.2015
comment
Опитайте да преименувате вашия .strings файл Localizable.stringsвместо Localized.strings.   -  person Michaël Azevedo    schedule 11.02.2015


Отговори (1)


Намерихте причината да имате този проблем тук:

Забележка: Localizable.strings е името на файла по подразбиране, което iOS използва за локализиран текст. Устоявайте на желанието да наименувате файла по друг начин, в противен случай ще трябва да въвеждате името на вашия .strings файл всеки път, когато препращате към локализиран низ.

Ако искате да използвате различен .strings файл за локализация, трябва да използвате метода:

- (NSString *)localizedStringForKey:(NSString *)key
                              value:(NSString *)value
                              table:(NSString *)tableName

и посочете Localized.strings като трети параметър (име на таблица).

person Lord Zsolt    schedule 11.02.2015
comment
ти си най-добрия ! сериозно, не помня откъде идва Localized.strings. Мисля, че Xcode го е добавил, но може би съм имал този файл преди в моя проект... във всеки случай благодаря - person Thomas; 11.02.2015
comment
Няма проблем. Никога не съм използвал тази функция, така че и за мен беше нещо ново :) - person Lord Zsolt; 11.02.2015