顯示 Toast 訊息

在 Android 中,Toast 是一個簡單的 UI 元素,可用於向使用者提供上下文反饋。

要顯示簡單的 Toast 訊息,我們可以執行以下操作。

// Declare the parameters to use for the Toast

Context context = getApplicationContext(); 
// in an Activity, you may also use "this"
// in a fragment, you can use getActivity()

CharSequence message = "I'm an Android Toast!";
int duration = Toast.LENGTH_LONG; // Toast.LENGTH_SHORT is the other option

// Create the Toast object, and show it!
Toast myToast = Toast.makeText(context, message, duration);
myToast.show();

或者,要顯示 Toast 內聯,而不保持 Toast 物件,你可以:

Toast.makeText(context, "Ding! Your Toast is ready.", Toast.LENGTH_SHORT).show();

重要資訊: 確保從 UI 執行緒呼叫 show() 方法。如果你想顯示來自不同的執行緒 Toast 可以如使用 runOnUiThread 的方法 Activity

如果沒有這樣做,意味著嘗試通過建立 Toast 來修改 UI,將會丟擲一個如下所示的 RuntimeException

java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()

處理此異常的最簡單方法是使用 runOnUiThread:語法如下所示。

   runOnUiThread(new Runnable() {
        @Override
        public void run() {
            // Your code here
        }
    });