Интернационализация и локализация
Устройства на базе iOS продаются более чем в 80 странах и поддерживают 30 языков. Подумайте, должно ли ваше приложение поддерживать разные языки и национальные стандарты. Интернационализация — это выявление частей приложения, привязанных к конкретному языку или культуре, и построение приложений, поддерживающих разные локальные контексты. Ниже перечислены аспекты, на которые следует обратить внимание:
Файлы .xib (представления, надписи, текст на кнопках и т. д.).
Текст и графика, связанные с конкретной культурой или местонахождением (например, флаги).
Справочные материалы и документация (прилагаемая или доступная в Интернете).
Статический текст в приложениях.
После выявления аспектов приложения, связанных с культурой или языком, следующим шагом становится их локализация. В iOS реализована сильная поддержка локализации ресурсов, причем локализуемые ресурсы отделяются от других компонентов приложения, чтобы их было проще передать группе, занимающейся локализацией.
До настоящего момента все ресурсы размещались в каталоге. арр приложений. При локализации ресурсов Xcode создает каталог lproj для каждой добавляемой локализации (локального контекста) и перемещает в локально-зависимые ресурсы.
В Xcode реализована встроенная под держка локализации файлов .xib. Но прежде чем браться за перевод, не обходимо приказать Xcode создать локально-зависимые каталоги.
Щелкните на кнопке + в группе Localization. Xcode преобразует .xib в группу с перечнем локализаций. Xcode копирует исходный файл .xib copies в локализацию по умолчанию.
При следующем нажатии кнопки + появляется раскрывающийся список для выбора используемого языка. Для каждого языка создается новый файл .xib.
Чтобы локализовать файл .xib, достаточно сделать двойной щелчок на версии для нужного языка и перевести тексты. Помните, что в зависимости от языка иногда также приходится вносить изменения в макет.
Для крупных проектов существует программа ibtool, которая извлекает все строковые данные из .xib во внешний файл, а позднее включает переводы обратно в .xib. Это позволяет поставить «на поток» извлечение и перевод текстов, но нужно обращать особенно пристальное внимание на макет, потому что отсутствует визуальный контроль за структурой .xib. После того как файл .xib переведен, его можно зафиксировать в Interface Builder для предотвращения случайных изменений текста или макета. За дополнительной информацией о ресурсных пакетах и локализации .xib обращайтесь к документации Apple.
- Дата: 14-01-2015, 11:06