Android Strudio 比Toast更靈活的訊息提示 Snackbar

Snackbar是被設計用來取代Toast的,而且可以加入按鈕



Snackbar和toast很像
只是Snackbar是以view作參數
而toast是以context

這樣會有一個限制,如果view不是在當前的顯示畫面中出現的話,Snackbar就不會出現

但是Snackbar上面可以加按鈕

首先要先在build.gradle裡面implementation這行
implementation 'com.android.support:design:28.0.0'


我們先建立一個按鈕觸發,並且設置監聽事件
(這篇有詳細介紹)



輸入這行
Snackbar.make(view, "www.ruyut.com", Snackbar.LENGTH_LONG) .show();

這是直接把Button的view傳入Snackbar內

執行結果:



也可以加入按鈕,這裡用Toast示範按下按鈕後觸發的事件
Snackbar.make(view, "www.ruyut.com", Snackbar.LENGTH_LONG) .setAction("這是按鈕", new View.OnClickListener() {
   @Override
   public void onClick(View view) {
          Toast.makeText(MainActivity.this,"這是在按下Snackbar的按鈕後出現",Toast.LENGTH_SHORT).show();
   }
}).show();

執行結果:









留言