iOS開発者のAndroid開発入門ポップ色々その3(Toast・Snackbar編)

botman3 Android
スポンサーリンク

はじめに

Android のダイアログとかポップぽいものを Popup としてまとめました。その3!!
今回は Toast と Snackbar について!

ソースは github にあげてます↓↓↓
ソース(github)

Toast

メッセージを表示するやつ。アプリがバックグラウンドにいっても表示されたままになる。

通常 中央表示 左上表示 カスタム
toast_normal toast_center toast_top_left toast_custom

アプリがバックグラウンド状態でも表示される

toast_back

基本的に使うのは下記。makeTextToast を生成し、setGravity で表示位置を調整して show で表示する。

duration は下記2パターン

  • Toast.LENGTH_LONG
  • Toast.LENGTH_SHORT

実装

簡易実装

カスタム表示

custom_toast.xml

参考

Snackbar

メッセージ表示とアクション設定ができるマテリアルコンポーネントの一つ。Toast とは異なりアプリがバックグラウンドになった場合は表示されない。
Snackbarの形を変えたり、アイコンをのせたり、アクションボタンの見た目を変更したりといったカスタマイズは推奨されていない(Don't って書いてたのでするな!ってことだと思う)背景色と文字色の変更は標準で用意されている。

メッセージのみ アクション付き 中央表示 左寄せ カスタム
snack_normal snack_action snack_center snack_left snack_custom

基本的に使うのは下記。makeSnackbar を生成し、setAction でアクションを設定し、setTextColor などで色を調整し show で表示する。

duration は下記3パターン

  • Snackbar.LENGTH_LONG
  • Snackbar.LENGTH_SHORT
  • Snackbar.LENGTH_INDEFINITE
    Dismissするまでずっと表示?

SnackBarFABBottomAppBar の上に出すよう推奨しているのでそういうときに setAnchorViewFAB などを設定する。何も設定しないと FAB と重なって表示されてしまう。

実装

表示位置を変えたい場合は下記のように任意の位置に空のViewを配置して make で設定するとそこに表示される。(表示位置変えるっていうのをやっていいのかはわからない。。。)

参考

おわりに

Toast がアプリバックグラウンドにいても表示されるっていうのが味噌なんだと思う。。。しらんけど。マテリアルコンポーネントは色々決まりがあるみたいなのでマテリアルデザインのサイトをよくチェックした方がよさそう。

Android は同じことをやるのでもやり方がありすぎてこまる。。。使い分けがわからない。。。
とりあえずこんな記事をみつけた
Dialog・Snackbar・Toast の使い分け

コメント

タイトルとURLをコピーしました