Это всегда хорошая практика, извлечь строки пользовательского интерфейса из кода приложения и держать их во внешнем файле. Android позволяет это легко сделать с помощью каталога ресурсов в каждом Android проекте.

Если вы создали свой проект с помощью инструментов Android SDK (читайте Создание Android проекта), инструменты создают res/ каталог, в верхнем уровне проекта. Внутри этого res/ каталога есть подкаталоги для различных типов ресурсов. Есть также несколько файлов по умолчанию, таких какres/values/strings.xml, который содержит значения ваших строк.

[wpanchor id=»1″]

 

Создайте региональные каталоги и строковые файлы


Чтобы добавить поддержку большего количества языков, создайте дополнительные valuesкаталоги внутри res/ , которые включают дефис и ISO код языка в конце имени каталога. Например,values-es/ является каталогом, содержащим простые ресурсы для региона с кодом языка «es». Android загружает соответствующие ресурсы в соответствии с региональными настройками устройства во время выполнения. Для получения дополнительной информации см. Предоставление альтернативных ресурсов.

Как только вы решили, какие языки вы будете поддерживать, создайте подкаталоги ресурсов и файлы строковых ресурсов. Например:

Добавьте строковые значения для каждого региона в соответствующий файл.

Во время выполнения, Android система использует соответствующий набор строковых ресурсов на основе региона, выбранного в настоящее время для устройства пользователем.

Например, ниже приводятся некоторые различные ресурсы строковых файлов для различных языков.

Английский (по умолчанию), /values/strings.xml:

 

Испанский, /values-es/strings.xml:

 

Французский, /values-fr/strings.xml:

 

Примечание: Вы можете использовать языковый спецификатор (или любой конфигурационный спецификатор) для любого типа ресурсов, как например, если вы хотите обеспечить локализованные версии растровых изображений. Для получения дополнительной информации см. Локализация.

[wpanchor id=»2″]

Используйте строковые ресурсы


Вы можете ссылаться на свои ресурсы строк в исходном коде и других XML файлах, используя имя ресурса, определенное в <string> элементе в name атрибуте.

В исходном коде, вы можете обратиться к строке ресурса, используя синтаксис R.string.<string_name>. Есть множество методов, которые принимают строку ресурса таким образом.

Например:

 

В других XML файлах, вы можете обратиться к строке ресурса, используя синтаксис@string/<string_name> всякий раз, когда атрибут XML принимает строковое значение.

Например:

 

Поддержка различных языков обновлено: Ноябрь 23, 2015 автором: admin

Добавить комментарий