75
48

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Android】アクションメッセージ、エラーメッセージの表示ルールを提案します

Posted at

正常に処理が行われたことを伝えるメッセージや、エラーが発生したことを伝えるメッセージを表示することは、ユーザーフレンドリーなアプリを提供する上で必要不可欠な行いになります。
Androidアプリでは、このようなメッセージを表示するために、昔から ToastAlertDialog 、Material Designが生まれてからは追加で Snackbar が提供されています。

しかし、いざメッセージ表示を実装しようとするとToastを使えば良いのか、AlertDialogを使えば良いのか、Snackbarを使えば良いのか、正直よくわかりません。
ToastとSnackbarに関しては Material Desiginのガイドライン で以下のように定義されていますがはっきりしていません。

  • Snackbars contain a single line of text directly related to the operation performed. They may contain a text action, but no icons.

  • Toasts (Android only) are primarily used for system messaging. They also display at the bottom of the screen, but may not be swiped off-screen.

そこで今回は私が勝手に解釈したメッセージの表示ルールをみなさんに提案したいと思います。

Toast

Toastは 必要なパーミッションが許可されていない、通信処理を行いたいのにネットワークに繋がっていない、などのOS側の設定に近いエラーメッセージ を表示する際に最適だと考えています。

Toastはアプリそのものよりも上のレイヤーに表示されますし、Snackbarが登場してからはプライオリティが高いメッセージを表示するものに格上げされたと勝手に解釈しているのでこのように考えました。
また、アプリ内でのクリティカルな位置づけのメッセージを表示する際にも使って良いと思います。

AlertDialog

AlertDialogは ユーザーの操作ミスやサーバーエラーなどの、ユーザーにメッセージをしっかり読んでもらいたいエラーメッセージ を表示する際に最適だと考えています。

SnackbarやToastと違って、ボタンをタップしないとメッセージが閉じないものになっているため、長文を表示させたり重要なメッセージを表示させたりする場合にも有効になってくると考えています。
*SnackbarやToastも長時間表示させることは可能ですが、本来の姿ではないと解釈しています

Snackbar

Snackbarは ユーザーの能動的なアクションによるメッセージ を表示する際に最適だと考えています。

Snackbarはメッセージの右側にアクションボタンが付けられるため、UNDOやRETRYが可能なメッセージを表示したい場合に有効になってくると考えています。
個人的にSnackbarにはポジティブなメッセージだけを表示させたい欲がありますが、必要であればエラーメッセージを表示させても良いと解釈しています。

その他(TextView)

バリデーションエラーや、Toast・AlertDialog・Snackbarを使うほどでもないメッセージに関しては、体験的にActivity/Fragment上に作ったTextViewに表示させるのが最適だと考えています。

まとめ

今回は私が勝手に解釈した内容を提案してみましたが、各々のアプリの世界観やルールにあわせてカスタマイズすることでより良いものになると思いますので、メッセージの表示ルールの策定をしてみてはいかがでしょうか。

75
48
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
75
48

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?