Назад к вопросам
Junior
235
questionbank
В чем отличие Snackbar от Toast?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Snackbar более гибкий: позволяет добавить кнопку действия, привязывается к конкретному View для правильного позиционирования и скрывается при взаимодействии со скроллабельным контентом (например, при прокрутке списка). Toast — это более простое, неинтерактивное всплывающее сообщение, которое отображается поверх всех элементов и не привязано к конкретному View.
Ключевые отличия:
| Особенность | Snackbar | Toast |
|---|---|---|
| Кнопка действия | Да | Нет |
| Позиционирование | Привязан к View | Отображается поверх всего, не привязан |
| Скрытие | Скрывается при скроллинге (в CoordinatorLayout) | Не скрывается при взаимодействии с контентом |
| Интерактивность | Пользователь может взаимодействовать с кнопкой | Пользователь не может взаимодействовать |
| Класс | com.google.android.material.snackbar.Snackbar |
android.widget.Toast |
Пример использования Snackbar:
// Для отображения Snackbar в CoordinatorLayout
Snackbar.make(findViewById(R.id.coordinator_layout),
"Файл удален",
Snackbar.LENGTH_LONG)
.setAction("Отменить") {
// Действие при клике на кнопку "Отменить"
}
.show()
Пример использования Toast:
// Для простого уведомления
Toast.makeText(applicationContext,
"Операция завершена",
Toast.LENGTH_SHORT)
.show()