Як зробити екран завантаження програми (splash screen), android, programming
У цій статті буде по кроках розглянуто, як створити простий додаток для Android. в якому реалізований сплешскрін (переклад [1]). Незнайомі терміни і скорочення см. В словничок [5].
[1. Створення в Eclipse проекту Android]

• Поле імені проекту (Project name) введіть "myApp".
• Виберіть створити новий проект у поточному робочому оточенні ( "Create new project in workspace").
• Виберіть в якості цільової системи для збірки (Build Target) потрібний рівень API Google, наприклад API Level 8 (відповідає Android 2.2).
• Введіть ім'я додатка "myApp" (поле введення Application name).
• Введіть ім'я пакета (поле package name) "com.tutorial.myapp".
• Перевірте галочку "Create Activity" (створити активність) і вкажіть ім'я для неї "MainActivity".
[2. Надання ресурсів]
На цьому наступному кроці потрібно створити картинку для splash screen image, і покласти її в папку / res / drawable-mdpi (специфікатор mdpi в імені папки вказує, що цей ресурс призначений для конфігурацій Android із середньою щільністю екрану, Medium-density dot per inch) . Ви можете надати кілька різних картинок, призначених для різної щільності екрану, і обов'язково надайте картинку для конфігурації за замовчуванням, поклавши її в папку / res / drawable. Детальніше див. [4]. Приклад картинки 320 px * 480 px, яку можна використовувати в якості екрану завантаження (Splash Screen):

[3. Створення XML layout для Splash Screen]

• Введіть splash.xml в поле для імені файлу (File).
• Виберіть радіокнопкою тип ресурсу Layout.
• Виберіть у нижньому випадаючому списку Linear Layout як кореневого елемента (root element) файлу XML.
Натисніть кнопку finish, і Ви побачите новий файл splash.xml, розміщений в папці / res / layout проекту. Відкрийте файл splash.xml і переключіться на режим редагування "splash.xml" (нижня закладка), якщо поточний вид цього XML графічний (якщо обрана нижня закладка Graphical Layout). Потім вставте підготовлену картинку для splash screen (збережену в папці / res / drawable-mdpi) в файл XML за допомогою використання віджету ImageView.
[4: Конфігурація початкового вигляду додатки (Splash Screen)]
Перед тим, як почати налаштовувати стартовий вигляд програми, корисно згадати про те, що таке життєвий цикл activity для додатка Android. Ось діаграма з документації Google, що ілюструє переходи між станами життєвого циклу Activity:

Обробник події onCreate () буде виконаний, коли запуститься додаток, так що потрібно підготувати всі необхідні ресурси в тілі обробника onCreate () (докладніше див. [3]).
Тепер приступимо до конфігурації стартового екрану (splash screen). Для цього відкрийте файл "MainActivity.java", який знаходиться в папці / src проекту. У тілі функції onCreate () змініть "setContentView (R.layout.main)", щоб замість layout.main використовувався layout.splash:
Збережіть Ваш код, а потім запустити на виконання командою меню "Run -> Run". На екрані запущеного віртуального пристрою AVD (або на екрані реального пристрою в режимі налагодження, підключеного через USB [6]) з'явиться splash screen з підготовленою картинкою. Ви можете задати питання, чому після відображення екрана завантаження нічого не відбувається, і програма зависає на ньому: це викликано тим, що ми не вказали, що потрібно робити після показу екрану splash screen.
Тепер потрібно вказати, як довго буде відображатися splash screen, і що потрібно показати після нього.

Ми будемо використовувати потік за допомогою класу Thread, щоб створити затримку для показу splash screen. Потік є елементарною середовищем виконання коду, який працює нарівні з усіма процесами Android. Зазвичай розробник запускає додатковий потік для спеціальних цілей. Тут показано, як задіяти потік Thread для генерації затримки, протягом якої буде відображатися splash screen:
• Рядок 4 потрібна для того, щоб імпортувати бібліотеку Intent - вона буде потрібно для запуску нової Activity після показу splash screen.
• Рядки 17..42 запускають новий потік Thread під ім'ям "logoTimer", при цьому таймер налаштований для показу splash screen протягом 5 секунд (5000 мс). Після 5 секунд в коді задано запустити нове Activity з ім'ям "CLEARSCREEN" за допомогою Intent *. Це нове Activity відобразить головний робочий вікні керування відразу після показу splash screen.
* Що таке Intent: слово Intent буквально перекладається як "намір". Це якийсь спосіб вказати системі Android, що Ви НАМІР РОБИТИ. Це може бути якась activity, або це може бути запит до системи Android знайти якусь програму для виконання потрібної дії.
[5. Створення домашнього екрану програми (App Home Screen)]
Тепер потрібно створити клас Java, який буде обслуговувати домашній екран додатка. Виконайте правий клік на папці проекту / src, виберіть "New -> Class", і вставте в форму настройки наступну інформацію:

• Введіть "com.tutorial.myapp" для імені пакета (поле Package).
• Введіть "myMainScreen" для імені класу (поле Name).
• Виберіть модифікатор, що задає публічний тип доступу до класу ( "public" в групі радіокнопок Modifiers).
Натисніть кнопку "Finish", і Ви побачите новий клас Java, створений і розміщений в папці / src. Відкрийте його і змінюйте код наступним чином:
Як можна бачити в цьому прикладі, цей клас буде завантажувати і встановлювати готову розмітку "main.xml" (створену автоматично при створенні проекту в Eclipse). Ви можете надалі відредагувати цю розмітку відповідно до Ваших вимог до основного вікна програми.
[6. Конфігурації файлу маніфесту додатки (AndroidManifest XML)]
На останньому кроці потрібно вказати Android запустити нову Activity на підставі запиту з ім'ям "CLEARSCREEN", яке ми вказали в модулі класу "MainActivity.java". Файл AndroidManifest представляє повну інформацію додатки, необхідну для запуску в середовищі системи Android. Відкрийте файл AndroidManifest.xml і вставте наступний код:
Рядки 15 - 21 говорять про запуск "CLEARSCREEN" класу "MainActivity.java", новий клас активності носитиме ім'я "myMainScreen". Це відобразить домашній екран додатка (home screen) після 5 секунд показу splash screen.
Збережіть проект, а потім запустити на виконання. В результаті головний екран додатка повинен з'являтися через 5 секунд після показу картинки splash screen.
