web-dev-qa-db-fra.com

Android - Snackbar vs Toast - utilisation et différence

Jusqu'à présent, nous utilisons uniquement Toasts dans notre application et, comme nous prévoyons d'adopter certaines nouvelles fonctionnalités de Support Design Library, je me demande quelle est l'utilisation recommandée de Snackbar vs. Toast.

J'ai lu sur le blog de Google.

Les barres de collation fournissent un retour d'information léger sur une opération dans un petit popup à la base de l'écran sur le mobile et en bas à gauche sur bureau. Ce sont surtout des éléments à l’écran, y compris le FAB.

et des toasts.

Android fournit également un pain grillé en forme de capsule, principalement utilisé pour messagerie système. Les toasts ressemblent aux barres de snack mais ne contiennent pas actions et ne peut pas être effacé de l'écran.

Je comprends ce qu'ils font mais je suis un peu confus quand utiliser quoi. Est-ce que cela signifie que:

  • Si je n'ai pas besoin d'interaction de l'utilisateur, j'utiliserais un toast?
  • Qu'entend-on par "messagerie système"? Cela s'applique-t-il à l'affichage d'informations lorsque quelque chose d'important s'est passé entre mon application et le système Android?
  • Ce que j’aime, c’est la fonction de balayage hors écran - serait-ce une raison pour commencer à remplacer les toasts par des barres-collations? (c'est une question d'opinion un peu cependant)
85
Jakub Holovsky

Si je n'ai pas besoin d'interaction de l'utilisateur, j'utiliserais un toast?

Vous pouvez toujours utiliser snackbar. Il n'est pas obligatoire d'avoir une action avec snackbar.

Qu'entend-on par "messagerie système"? Est-ce que cela s'applique à l'affichage informations lorsque quelque chose d'important est arrivé entre mon application et le Système Android?

Je pense que cela signifie que les Toasts doivent être utilisés s’il ya des problèmes liés au système. Android dans son ensemble ou un service d’arrière-plan que vous utilisez peut-être. Par exemple. Text-To-Speech is not installed. OR No Email client found.

Ce que j’aime, c’est la fonctionnalité d’effacement de l’écran - serait-ce une raison commencer à remplacer les toasts par des barres de snack? (Ceci est un peu basé sur l'opinion question cependant)

C'est une des raisons. Mais il y a plusieurs autres points positifs. Par exemple: Votre toast reste affiché à l’écran même lorsque l’activité est terminée. Snackbar n'a pas. Il y a moins de confusion si le pain grillé ne s'affiche pas (ou continue à apparaître en cas de création multiple de Toast en séquence) longtemps après la sortie de l'application. Cela n'arrivera pas avec snackbar.

Plus que tout: je suggère que si vous réfléchissez, vous devriez changer. Les casse-croûte semblent beaucoup mieux que les toasts.

J'aimerais ajouter une petite comparaison entre toast et snack-bar. À mon avis, si vous souhaitez présenter un avertissement ou des informations nécessitant une intervention/un accusé de réception de la part de l'utilisateur, vous devez utiliser un snack-bar. S'il s'agit simplement d'un message d'information qui ne nécessite aucune confirmation de l'utilisateur, vous pouvez utiliser un toast.

+---+----------------------------------------------------------------------+--------------------------------------------------------------------------+
| # |                                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 |
+---+----------------------------------------------------------------------+--------------------------------------------------------------------------+
40
Midhun MP

Pain grillé:

  1. Toast a été ajouté dans l'API Level 1
  2. Fondamentalement, l'activité n'est pas requise (peut être affichée sur la maison Android ou même au-dessus des autres applications)
  3. Il ne peut pas effectuer d’action basée sur la saisie de l’utilisateur
  4. On ne peut pas le rejeter en glissant
  5. Il ne peut pas gérer les entrées utilisateur telles que glisser, cliquer, etc.
  6. Bon pour montrer des messages d'information à l'utilisateur

SnackBar:

  1. SnackBar a été ajouté dans l'API Level 23
  2. Il peut être montré dans une activité des applications
  3. Il peut effectuer une action
  4. Il peut être écarté en balayant
  5. Il peut gérer les entrées de l'utilisateur
  6. Bon pour montrer des messages de type avertissement/info à l'utilisateur qui a besoin d'attention

Utilisation de SnackBar et Toast:

SnackBar:

SnackBar peut être utilisé dans les zones où un message contextuel simple doit être affiché avec une option permettant d'exécuter l'action . 'avec un bouton d'action' Annuler '. En appuyant sur le bouton d’action «Annuler», le courrier supprimé sera restauré.

Pain grillé:

Toast peut être utilisé dans les zones où les messages système doivent être affichés.

Par exemple:

Lorsque votre application tente de télécharger du JSON à partir d’un serveur distant mais qu’elle échoue en raison de l’expiration du serveur ou de l’absence de ressource, il vous suffit d’afficher le message d’erreur indiquant que l’erreur est survenue. Mais comprenez que le message Toast ne peut pas être ignoré en balayant. Si vous souhaitez toujours pouvoir le supprimer dans votre application, optez pour SnackBar.

20
Dhaval Jivani

Selon la documentation officielle à Aperçu des messages contextuels :

Remarque: _ ​​Le Snackbar class remplace Toast . Alors que Toast est toujours pris en charge, Snackbar est maintenant le moyen préféré pour afficher des messages brefs et transitoires à l'utilisateur.

et (Conception du matériel) Snackbars 's's documentation:

Concepts associés: _ ​​Android fournit également une classe Toast avec une API similaire, qui peut être utilisée pour afficher des notifications au niveau du système. En règle générale, les barres de snack-bar sont le mécanisme préféré pour afficher des ils peuvent être affichés dans le contexte de l’UI où l’action s’est produite. Reserve Toast pour les cas où cela ne peut pas être fait.

5
Nicolau

La spécification de conception matérielle de Google indique qu'il est correct d'avoir un Snackbar sans action. Ils ont fourni des exemples de ce à quoi devrait ressembler un Snackbar s'il n'affiche qu'une seule chaîne. Je suppose que "Messagerie système" signifie que des événements de périphérique tels que la connexion réseau sont perdus - alors que l'archivage d'un courrier électronique est une action spécifique de Gmail, par exemple.

Par souci de cohérence, il est judicieux de choisir un pain grillé ou un snack-bar et de l'appliquer dans l'ensemble de votre application.

2
fractalwrench

La réponse courte est que ce sont deux façons de communiquer à l’utilisateur des choses qui se passent en arrière-plan, et vous pouvez atteindre l’un d’eux, c’est parfait. Assurez-vous simplement que vous utilisez le même et que vous ne basculez pas entre eux.

La réponse longue:

  • Non, cela signifie que si vous avez besoin d'action, vous devez utiliser Snackbar. Vous pouvez toujours utiliser Snackbar uniquement pour les messages (comme "Téléchargement terminé").
  • Par "système", cela ne signifie pas uniquement le système Android. Par exemple, s'il y avait un problème d'analyse syntaxique lors de l'obtention d'informations sur votre serveur, vous pouvez toujours utiliser toast pour laisser l'utilisateur un problème se produire lors de la communication avec le serveur.
  • Si vous avez vraiment besoin de glisser cela, c'est une raison pour choisir Snackbar
1
shem

Notre équipe de conception envisage également d'utiliser des toasts ou des barres de snack. Nous arrivons à la conclusion que l'application devrait utiliser des barres-collations compte tenu de sa flexibilité.

Les toasts ne doivent être utilisés que lorsque nous avons besoin d'un persistant, d'une chaîne courte, d'un message d'information qui a encore un sens sur différents écrans.

1
Vennsoh

Android fournit également un pain grillé en forme de capsule, principalement utilisé pour la messagerie système. 

Je pense qu'avec "messagerie système", ils font également référence au fait qu'un pain grillé sera affiché pendant un temps spécifique et ne peut pas être ignoré même si l'utilisateur navigue entre les activités et même si l'application est déplacée en arrière-plan.

Je considère comme un avantage de snackbar de limiter son champ d'action à une activité et de pouvoir la rejeter.

0
Peter F