Назад к вопросам
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()