vity. Особливістю даних класів є те, що вони описують той чи інший крупний компонент програми, що важливий, в першу чергу, для ОС.
Для чотирьох активують-класів можна виділити кілька загальних методів, визначених у базовому класі і часто переобумовлених в класах спадкоємців. Ці методи викликаються в різні моменти життєвого циклу активують і служать для коректної обробки зміни стадій життєвого циклу.
- void onCreate (Bundle savedInstanceState) - метод, що викликається при створенні активують. У ньому здійснюється створення і розміщення (inflatting) візуальних компонентів (зазвичай із спеціального файлу з розміткою), а також початкова ініціалізація компонентів. Даний метод можна розглядати як аналог конструктора, з тією лише різницею, що на момент виклику активують буде вже не тільки створена, але і відображатися на екрані телефону. Об'єкт типу Bundle є контейнером, що містить пари ключ-значення і служить для відновлення параметрів при пересоздании активують після повороту екрану чи іншої зміни конфігурації.
- boolean on Create Options Menu (Menu menu) - метод, що викликається при створенні контекстного меню активують, пункти якого додавалися до об'єкта menu. На даний момент шаблон проектування з використанням контекстного меню застарів і в цьому методі проводиться ініціалізація так званої «рядки дій» (Action Bar), є актуальною на даний момент дизайнерським шаблоном для надання контекстно залежних опцій. На відміну від контекстного меню, рядок дій, зазвичай, инициализируется не в коді, а у файлі розмітки. Возвращаемое методом значення служить індикатором для створення меню: якщо метод поверне false, то контекстне меню створено не буде, навіть якщо воно буде ініціалізувати значеннями. Така поведінка справедливо також і для рядка дій.
- boolean on Options Item Selected (MenuItem item) - метод викликається при виборі пункту меню або дії з рядка дій (насправді, це одне і те ж: різниця лише в термінології і способі відображення). Об'єкт типу Menu Item асоційований з візуальним елементом, що обробляють натискання, а повертається значення є індикатором закінчення обробки натискання: якщо метод повертає false, для певного пункту меню, значить натискання на нього буде оброблено в іншому місці.
- void on Resume () - метод, що викликається безпосередньо перед відображенням активують на екрані. У даному методі зазвичай проводиться відновлення всіх тимчасово перерваних процесів.
- void on Pause () - метод, що викликається при переході активують в неактивний режим. Іншими словами, кожен раз, коли активують пропадає з екрану. У даному методі зазвичай призупиняються всі пов'язані з призначеним для користувача інтерфейсом процеси, а також проводиться збереження стану важливих змінних.
- void on Activity Result (int request Code, int result Code, Intent data) - даний метод являє собою обробник результатів, отриманих від дій ініційованих за допомогою ІНТЕНТ, наприклад, таких, як виклик активують, що містить детальне уявлення або отримання інформації від датчиків телефону. В даному випадку request Code - унікальний ідентифікатор ІНТЕНТ, result Code - код результату, зазвичай показує успіх або помилку, data - безпосередньо сам Інтент з результатами виконання запиту.
- void on Click (View view) - даний метод не є частиною класу Activity, однак дуже часто використовується в його спадкоємців. Даний метод є єдиним компонентом інтерфейсу View. On Click Listener, який повинні реалізувати об'єкти-слухачі подій-кліків по візуальним елементам управління. Існує два основні підходи до обробки кліків, кожен з яких має свої переваги і недоліки: або для кожного елемента управління створюється свій клас-слухач (зазвичай анонімний), або активують реалізує інтерфейс View. On Click Listener і стає слухачем для всіх свої елементів управління. У даному проекті використовується другий спосіб.
Крім цих методів, можна відзначити наявність в класах-активують цілочисельних констант виду «ACTION_CODE_XXX» і строкових констант виду «YYY_DIALOG_TAG».
Константи першого типу являють собою унікальні ключі, використовувані при створенні ІНТЕНТ. Вони необхідні для ідентифікації результатів, отриманих в якості відповіді на певні ІНТЕНТ. Ідентифікатор, заданий при створенні ІНТЕНТ буде надалі переданий в метод on Activity Result як параметр requestCode. Значення цілочисельних констант формуються з трьох цифр зразок кодів HTTP відповідей. Перша цифра показує компонент (клас), якому належить константа, друга - область застосування константи (ідентифікатор ІНТЕНТ, ідентифікатор завантажувача і т.д.), третя - порядковий номер константи в рамках заданого компонента і області застосування.
Константи другого типу являють собою ідентифікатори-теги діалогових в...