Локализованный NIB не загружает локализованную версию изображения в XCode4 - PullRequest
2 голосов
/ 21 декабря 2011

Я заметил проблему в XCode 4.2, когда некоторые локализованные NIB не загружают правильное изображение из соответствующего языкового пакета.

В одном из моих контроллеров у меня есть несколько изображений.В английской версии я заметил, что некоторые виды изображений используют французскую версию изображений, которые должны быть загружены на них.То же самое происходит с французской версией NIB.

Я, очевидно, дважды проверил мои ресурсы изображений и убедился, что французские изображения правильно хранятся как в «en.lproj», так и в «fr.lproj».папки.

Кто-нибудь сталкивался с этой проблемой раньше?Самая большая головная боль - каждый раз, когда я запускаю проект, будь то в симуляторе или в реальном телефоне, изображения, кажется, постоянно меняются.У меня даже нет ручных вызовов в моем контроллере для загрузки изображений.Все изображения просто предустановлены через NIB.

Ответы [ 2 ]

0 голосов
/ 03 мая 2013

У меня та же проблема, и единственное решение, которое я нашел, было удалить локализацию изображений и загрузить их.

UIImage *img = [UIImage imageNamed:NSLocalizedString (@"imageOne.png", @"Main Image")];

И в ваших Localizble.strings (испанский) дляНапример, вы пишете:

"imageOne.png" = "imageOne_es.png";

И для Localizble.strings (английский) :

"imageOne.png" = "imageOne_en.png";
0 голосов
/ 21 декабря 2011

Если вы локализовали ресурс после того, как он был включен в сборку, нелокализованная версия ресурса остается в собранном приложении.Перестройка приложения только добавляет новые файлы и обновляет отредактированные файлы, но не удаляет удаленные файлы.

Чтобы решить эту проблему в симуляторе, вы можете открыть Органайзер (Window> Organizer), выберитеProjects и удалите производные данные вашего проекта, а затем восстановите.

Чтобы решить эту проблему на своем устройстве, вы можете удалить приложение, очистить продукты сборки (Product> Clean), а затем восстановить.

...