Телефонуйте » (+38) 096 227 41 41

Завжди є хорошою практикою витягти рядки інтерфейсу користувача з коду додатка і тримати їх в зовнішньому файлі. Android- це легко робить за допомогою каталогу ресурсів в кожному проекті Android. Якщо ви створили свій проект за допомогою Android SDK Tools (читайте Створюємо свій перший додаток для Android), то інструменти створили каталог res/ на верхньому рівні проекту.

У цьому каталозі res/ є підкаталоги для різних типів ресурсів. В тому числі, кілька таких файлів за замовчуванням, як res/values/strings.xml, які зберігають ваші рядкові значення.

Створення локалізованих каталогів і рядкових файлів

Щоб додати підтримку інших мов, створіть додаткові каталоги values всередині res/, які включають дефіс і код ISO мови в кінці імені каталогу. Наприклад, values-es/ є каталог, що містить прості ресурси для локалей з кодом мови "es". Android-завантажує відповідні ресурси згідно з налаштуваннями локалі пристрою під час виконання. Для отримання додаткової інформації див. Providing Alternative Resources.
Після того, як ви вирішили, які мови будете підтримувати, створіть підкаталоги ресурсів і файли рядкових ресурсів. Наприклад:
MyProject/
    res/
       values/
           strings.xml
       values-es/
           strings.xml
       values-fr/
           strings.xml

Додайте рядкові значення для кожного регіону у відповідному файлі.
Система Android під час виконання використовує відповідний набір рядкових ресурсів, заснованих на локалі, встановленій для пристрою користувача в даний час.
Для прикладу, далі наведені деякі різні файли рядкових ресурсів для різних мов.
Англійська (локаль за замовчуванням), /values/strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">My Application</string>
    <string name="hello_world">Hello World!</string>
</resources>

Іспанська, /values-es/strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">Mi Aplicación</string>
    <string name="hello_world">Hola Mundo!</string>
</resources>

Французька, /values-fr/strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">Mon Application</string>
    <string name="hello_world">Bonjour le monde !</string>
</resources>

Українська, /values-ua/strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">Мій додаток</string>
    <string name="hello_world">Привіт світ !</string>
</resources>

Примітка: Ви можете використовувати локалі відбірково (або будь-якої відбіркової конфігурації) на будь-якому типі ресурсів, наприклад, якщо хочете забезпечити локалізовані версії растрових зображень. Для отримання додаткової інформації див. Localization.

Використання рядкових ресурсів

Ви можете посилатися на свої рядкові ресурси у своєму вихідному коді та інших XML-файлах за допомогою імені ресурсу, визначеного елементами <string> атрибуту name.
У вихідному коді можете звернутися до рядкового ресурсу з синтаксисом R.string.<string_name>. Є безліч способів, як отримати рядковий ресурс цим шляхом.
Наприклад:
// Get a string resource from your app's Resources
String hello = getResources().getString(R.string.hello_world);

// Or supply a string resource to a method that requires a string
TextView textView = new TextView(this);
textView.setText(R.string.hello_world);

В інших файлах XML можете звернутися до рядкового ресурсу з синтаксисом @string/<string_name> щоразу, коли атрибут XML приймає рядкове значення.
Наприклад:
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello_world" />

(Джерело: developer.android.com)

Новини

  • SDR в IoT

    iotSDR пропонує платформу розробок для IoT-радіо та мережевих доменів. На платі два передавачі Microchip AT86RF215, для вводу-виводу модему на Xilinx ZYNQ SoC, приймач GNSS MAX2769 для GPS, Galileo, BieDou та Glonass. Плата сумісна з ПЗ GNURadio SDR. Дозволяє розробити протоколи фізичного рівня LoRa, SigFox, WightLess, Bluetooth, BLE, 802.15.4, ZigBee тощо для IoT, або шлюз IoT через TheThingsNetwork, LPWAN або Google Thread. Пам'ять EEPROM: 1x AT24MAC602 , flash-пам'ять: 1x QSPI 128 Мб, RAM: 256 MБ DDR3,слот для Micro SD карти, входи/виходи: 2x 8-бітних інтерфейси PL, інтерфейс 8-бітного PS, Gigabit Ethernet, USB 2.0 (USB3310), USB 2.0 (CP2104), 2x SMA RF-роз'єми для приймача діапазонів IoT, 2x SMA RF-роз'єми для приймача 2,4 ГГц , RF-роз'єм приймач GNSS, FPGA-роз'єм JTAG для програмування. Розміри плати: 76,2 мм x 101,6 мм.

     

    in Новини

Записатися на курс