Я создаю свое первое приложение IOS для iphone 6.NSLocalizedString() собирает кешированную запись с локализовано локализованного.строка
У меня возникла проблема с получением Xcode для сбора пар ключ/значение из локализованной версии Localizable.strings. Кажется, что метод NSLocalizedString() возвращает записи кэша, прежде чем я локализую файл Localizable.strings.
- Вы можете видеть на скриншоте ниже, что, когда я только имел только один файл Localizable.strings, код подбирает пары ключ/значение, я искал просто отлично https://www.evernote.com/l/AAIi1y9qYi5H9o_SiUduTECZJZMvYr5FCfw
- Когда я попытался локализовать Файл Localizable.strings (т. Е. Имеющий базовую, английскую, китайскую версию файла), NSLocalizedString() возвращает значение ключа, когда у меня был один файл Localizable.strings. https://www.evernote.com/l/AALbxEQwnuVFHaHMLduAgZw5N1op8o2Alc8 Я знаю, что это происходит потому, что, когда я изменяю значения для одного и того же ключа во всех трех файлах, он все равно возвращает старое значение.
Я также попытался
- Сброс настроек тренажера (это предполагает кэш в сборке)
- Перезапуск симулятор/Xcode
- Searching для старого значения в моем проекте , не удалось найти старые значения, возвращаемые NSLocalizedString
- Смена ключа на что-то еще, NSLocalizedString просто возвращает ключ в этом случае
- Повторное создание файла Localizable.strings и локализация его снова с помощью File Inspector, то же самое происходит последовательно каждый раз
У меня действительно исходит из идей. Я использую Xcode: Version 6.3.1 (6D1002), любая помощь будет высоко оценена :)
Дайте последнюю версию Xcode попробовать, а также попробуйте приложение на устройстве и посмотрите, изменились ли ваши результаты. –
В соответствии с принятым ответом эта проблема не воспроизводится, потому что проект очищает ее. –