crear android difference android-toast android-snackbar

crear - Android-Snackbar vs Toast-uso y diferencia



crear snackbar android (8)

Hasta ahora hemos estado usando solo Toast en nuestra aplicación y, mientras planeamos adoptar algunas características nuevas de Support Design Library, me pregunto cuál es el uso recomendado para Snackbar vs. Toast.

He estado leyendo en Google Docs snackbar doc.

Los Snackbars brindan información liviana sobre una operación en una pequeña ventana emergente en la base de la pantalla del dispositivo móvil y en la esquina inferior izquierda del escritorio. Están sobre todo sobre los elementos en pantalla, incluido el FAB.

y tostadas

Android también proporciona un brindis en forma de cápsula, utilizado principalmente para la mensajería del sistema. Las tostadas son similares a las barras de snack, pero no contienen acciones y no se pueden deslizar fuera de la pantalla.

Entiendo lo que hacen, pero estoy un poco confundido sobre cuándo usar qué. Significa que:

  • Si no requiero interacción del usuario, ¿usaría un brindis?
  • ¿Qué se entiende por "mensajes del sistema"? ¿Se aplica eso a mostrar información cuando algo importante sucedió entre mi aplicación y el sistema Android?
  • Lo que me gusta es la función de deslizar fuera de la pantalla: ¿sería esa una razón para comenzar a reemplazar las tostadas con barras de snack? (Esta es una pregunta un poco basada en la opinión)

Android también proporciona una tostada en forma de cápsula, utilizada principalmente para la mensajería del sistema.

Creo que con "mensajes del sistema" también se refieren al hecho de que se mostrará un brindis por un tiempo específico y no se puede descartar incluso si el usuario navega por las actividades e incluso si la aplicación se mueve a un segundo plano.

Considero una ventaja de snackbar limitar su alcance a una actividad y poder descartarla.


Si no requiero interacción del usuario, ¿usaría un brindis?

Todavía puedes usar snackbar. No es obligatorio tener una acción con snackbar.

¿Qué se entiende por "mensajes del sistema"? ¿Se aplica eso a mostrar información cuando algo importante sucedió entre mi aplicación y el sistema Android?

Creo que esto significa que se deben usar tostadas si hay algunos mensajes relacionados con el sistema. Puede estar ejecutando Android en su conjunto o algún servicio en segundo plano. Por ejemplo, Text-To-Speech is not installed. O No Email client found.

Lo que me gusta es la función de deslizar fuera de la pantalla: ¿sería esa una razón para comenzar a reemplazar las tostadas con barras de snack? (Esta es una pregunta un poco basada en la opinión)

Esa es una de las razones. Pero hay varios otros puntos a favor. Por ejemplo: su brindis permanece en la pantalla incluso cuando finaliza la actividad. Snackbar no lo hace. Hay menos confusión si el brindis no aparece (o sigue apareciendo en caso de creación múltiple de Toast en secuencia) mucho después de que se cierra la aplicación. Esto no sucederá con snackbar.

Más que todo: sugiero que si estás pensando, deberías cambiar. Los SnackBars se ven mucho mejor que las tostadas.


De acuerdo con la documentación oficial en la descripción general de mensajes emergentes :

Nota: La clase Snackbar reemplaza a Toast . Si bien Toast todavía es compatible, Snackbar es ahora la forma preferida de mostrar mensajes breves y transitorios al usuario.

y (Diseño de materiales) la documentación de Snackbars :

Conceptos relacionados: Android también proporciona una clase Toast con una API similar que se puede usar para mostrar notificaciones a nivel de sistema. En general, los snackbars son el mecanismo preferido para mostrar mensajes de retroalimentación a los usuarios, ya que pueden mostrarse en el contexto de la IU donde ocurrió la acción. Reserve Toast para los casos en que esto no se pueda hacer.


La especificación de diseño de materiales de Google dice que está bien tener una Snackbar sin una acción. Han proporcionado ejemplos de cómo debería ser una Snackbar si solo muestra una sola cadena. Supongo que "Mensajería del sistema" significa que se pierden eventos del dispositivo, como la conexión de red, mientras que archivar un correo electrónico es una acción específica de Gmail, por ejemplo.

En aras de la coherencia, tiene sentido elegir un Toast o un Snackbar y aplicarlo en toda la aplicación.


La respuesta corta es que esas son 2 formas de comunicarle al usuario las cosas que suceden en segundo plano, y usted puede alcanzar una de ellas, ambas bien. Solo asegúrate de estar usando el mismo y no cambiar entre ellos de un lado a otro.

La respuesta larga:

  • No, eso significa que si necesita alguna acción, debe usar Snackbar. Todavía puede usar Snackbar solo para mensajes (como "Carga finalizada").
  • Por "sistema" no significa solo el sistema Android. Por ejemplo, si hubo un problema de análisis json al obtener información de su servidor, aún puede usar tostadas para permitir que el usuario haya tenido un problema mientras se comunica con el servidor.
  • Si realmente necesita deslizar esto, esa es una razón absoluta para elegir Snackbar

Me gustaría agregar una pequeña comparación entre tostadas y snack bar. En mi opinión, si su intención es presentar una advertencia o información que requiera la interacción / reconocimiento del usuario, debe usar un snack bar. Si es solo un mensaje de información que no necesita ningún reconocimiento del usuario, puede usar tostadas.

+---+----------------------------------------------------------------------+--------------------------------------------------------------------------+ | # | Toast | Snackbar | +---+----------------------------------------------------------------------+--------------------------------------------------------------------------+ | 1 | Can’t be dismissed by swiping | Can dismiss by swiping | | 2 | Activity not required (Can show in android home or above other apps) | Can show inside an activity of your app | | 3 | Can’t handle user input | Can handle user input | | 4 | Good for showing info messages to user | Good for showing warning/info type messages to user that needs attention | +---+----------------------------------------------------------------------+--------------------------------------------------------------------------+


Nuestro equipo de diseño está analizando el uso de tostadas o refrigerios también. Llegamos a la conclusión de que la aplicación debería usar barras de snack dada la flexibilidad de la misma.

Las tostadas solo deben usarse cuando necesitamos un mensaje de información de cadena corta y persistente que todavía tiene sentido en diferentes pantallas.


Tostada:

  1. Toast fue agregado en API Nivel 1
  2. Básicamente, no se requiere actividad (se puede mostrar en Android home o incluso sobre otras aplicaciones)
  3. No puede realizar una acción basada en la entrada del usuario
  4. No se puede descartar deslizando
  5. No puede manejar la entrada del usuario como deslizar, hacer clic, etc.
  6. Bueno para mostrar mensajes de información al usuario

SnackBar:

  1. SnackBar se agregó en API Nivel 23
  2. Se puede mostrar dentro de una actividad de las Aplicaciones
  3. Puede realizar una acción
  4. Se puede descartar deslizando el dedo
  5. Puede manejar la entrada del usuario
  6. Bueno para mostrar mensajes de advertencia / tipo de información al usuario que necesita atención

Uso de SnackBar y Toast:

SnackBar:

SnackBar se puede usar en las áreas donde se necesita mostrar un mensaje emergente simple junto con una opción para realizar acciones. Por ejemplo: en la aplicación GMail, cuando elimina Correo, se muestra la barra rápida de SnackBar en la parte inferior con el mensaje ''1 eliminado'' con un botón de acción ''Deshacer''. Al presionar el botón de acción ''Deshacer'', se restaurará el correo eliminado.

Tostada:

Toast se puede utilizar en las áreas donde se deben mostrar los mensajes del sistema.

Por ejemplo:

Cuando su aplicación intenta descargar JSON desde el servidor remoto pero falla debido al tiempo de espera del servidor o no se encontró ningún recurso, solo necesita mostrar el mensaje de error que dice "Se produjo un error". Pero entienda que el mensaje Toast no se puede descartar deslizando el dedo. Si aún desea tener la capacidad de descartarlo en su aplicación, vaya a SnackBar.