Давайте навчимося користуватися такою корисною штукою, як спливаюче повідомлення Toast. Такого роду повідомлення служить в основному для того, щоб проінформувати користувача про яке - небудь подію. Користувач не може взаємодіяти і ніяк впливати на повідомлення, го доля - просто дочекатися поки Toast повідомлення плавно зникне. Під час, коли Toast повідомлення відображається на екрані, користувачеві доступні всі дії в програмі, повідомлення не впливає ні на яку функцію додатка. Уявіть, що ви натискаєте на кнопку плей в програвачі, а тут спливає віконце з написом: "Файли відсутні" і саме через пару секунд зникає. Це і є Toast повідомлення.
Створюємо новий проект, всі назви за замовчуванням, або на ваш розсуд.
Відразу відредагуємо файл activity_main.xml. Додамо туди кілька кнопок, кожна з яких буде викликати Toast повідомлення певного типу:
Як бачите, ми створили 4 кнопки, які будуть викликати 4 різних види Toast повідомлення. Для всіх кнопок ми задали один метод натискання, який потрібно описати.
Ставимо курсор на рядок:
будь-якої клавіші і тиснемо Alt + Enter і вибираємо перший рядок (створюємо таким чином у файлі MainActivity.java метод опису натискання наших клавіш):
Переходимо до створення відповідних Toast повідомлень у файлі MainActivity.java.
Ми використовували прийом опису натискання клавіш через команду switch. щоб не створювати для кожної кнопки окремого обробника натискання.
Як бачите, Toast повідомлення створюється класом Toast прямо всередині методу обробки натискання клавіш. Для першої кнопки ми створили просте Toast повідомлення і за допомогою методу makeText налаштували йому текст для відображення, вказали, що воно повинно відображатися в нашому MainActivity і налаштували тривалість висвітлювання повідомлення LENGTH_SHORT (LENGTH_SHORT = 2 секунди, LENGTH_LONG = 3,5 секунди, це системні константи ).
У разі другої кнопки "Toast з координатами положення" ми задали Toast трохи інакше і з допомогою команди setGravity виставили положення (TOP - у верхній частині екрану, 0 - зміна координати по X, 0 - зміна координати по Y), де буде висвітлюватися повідомлення. Зверніть увагу, що тут уже тривалість відображення LENGTH_LONG.
Для третин кнопки завдання ще більш ускладнена - підключаємо в Toast повідомлення відображення картинки. У тілі класу Toast ми створили два об'єкти LinearLayout і ImageView. до об'єкта ImageView прив'язали картинку з папки drawable. і налаштували її відображення в LinearLayout.
Ну і залишилося створити ще один намічений нами на початку тип Toast повідомлення - з власним інтерфейсом. Для цього спочатку потрібно створити файл розмітки layout. в якому ми і поставимо зовнішній вигляд повідомлення. В папці layout створюємо файл toast.xml і переходимо до його редагування:
Як бачите, ми створили такий вид віконечка повідомлення:
Тепер потрібно повернутися в файл MainActivity.java і додати до методу обробки клацання Toast код для останньої кнопки:
Повний код файлу MainActivity.java.
Все готово! Ми навчилися робити 4 різновиди Toast повідомлень для свого застосування (останній особливо прикольний :)). Це не межа знань по темі, але, погодьтеся, досить багато і корисно.
Вид ефектів у програмному забезпеченні (весь екран не буду постити, тому, що в віртуальному планшеті здАрАвенний екран):