Toast 是一個方便又簡單的工具,可以直接在畫面上顯示簡短的訊息以通知使用者。 最簡單的呼叫方式: Toast.makeText(this, "Hello Toast!", Toast.LENGTH_SHORT).show(); 但這樣會有一個問題,若使用者短時間內連續執行了一堆會產生 Toast 的操作,Toast 會被排在佇列中依序顯示,直到前一個 Toast 結束後才顯示下一個 Toast,一直被累積的結果就是無法立即反應使用者的操作。 那麼要如何讓新的 Toast 能立即被顯示呢? 方法如下: private Toast mToast; private void showToast(String msg) { if (mToast == null) { mToast = Toast.makeText(this, "", Toast.LENGTH_SHORT); } mToast.setText(msg); mToast.show(); } 需要使用 Toast 時,呼叫 showToast() 即可,此時若舊的 Toast 還在,會立刻被更新為新的 Toast 訊息。 參考資料: http://stackoverflow.com/questions/5503682/how-to-cancel-toast-created-in-a-different-method-on-android
Creating apps to make your life easier.