Тост – это всплывающее уведомление с информацией о той или иной операции. Оно занимает только необходимую часть экрана, а текущее действие остается видимым и доступным для взаимодействия. Всплывающие уведомления автоматически исчезают через некоторое время.
Например, если нажать Отправить в электронном письме, появится всплывающее уведомление "Отправка сообщения…", как показано на следующем скриншоте:
Если приложение предназначено для Android 12 (уровень API 31) или более поздней версии, всплывающее уведомление может содержать не более двух строк текста и значок приложения рядом с ним. Учтите, что длина строки этого текста зависит от размера экрана, поэтому лучше сделать текст как можно короче.
Альтернативы всплывающим уведомлениям
Если приложение работает в активном режиме, рекомендуем использовать панель уведомлений вместо всплывающих сообщений. Всплывающие уведомления содержат варианты действий, которые могут улучшить работу с приложением.
Если приложение работает в фоновом режиме и вам нужно, чтобы пользователь выполнил какое-то действие, используйте уведомление.
Создайте экземпляр объекта Toast
Используйте метод makeText(), который принимает следующие параметры:
- Действие
Context. - Текст, который должен видеть пользователь.
- Продолжительность показа всплывающего уведомления на экране.
Метод makeText() возвращает правильно инициализированный объект Toast.
Показать всплывающее уведомление
Чтобы показать всплывающее уведомление, вызовите метод show(), как показано в примере ниже.
Kotlin
val text = "Hello toast!" val duration = Toast.LENGTH_SHORT val toast = Toast.makeText(this, text, duration) // in Activity toast.show()
Java
CharSequence text = "Hello toast!"; int duration = Toast.LENGTH_SHORT; Toast toast = Toast.makeText(this /* MyActivity */, text, duration); toast.show();
Как объединить вызовы метода toast
Вы можете объединить методы в цепочку, чтобы не удерживать объект Toast, как показано в следующем фрагменте кода:
Kotlin
Toast.makeText(context, text, duration).show()
Java
Toast.makeText(context, text, duration).show();