浮動式訊息總覽

浮動式訊息會以小型的彈出式視窗提供簡單的回饋內容。它只會填滿訊息所需的空間,而目前進行中的活動仍會出現在畫面上,可以繼續進行互動。浮動式訊息會在逾時後自動消失。

舉例來說,如果您點選電子郵件上的「傳送」,就會觸發「正在傳送郵件...」的浮動式訊息,如下方螢幕截圖所示:

圖片中的 Android 裝置顯示浮動式訊息彈出式視窗,而其中的應用程式圖示旁顯示「正在傳送郵件」

如果您的應用程式針對的是 Android 12(API 級別 31)以上版本,那麼浮動式訊息最多只能顯示兩行文字,並會在文字旁顯示應用程式圖示。請注意,這行文字的長度會因螢幕大小而異,因此請盡量讓文字簡短。

使用浮動式訊息的替代方案

如果您的應用程式位於前景,請考慮使用 snackbar 而不要使用浮動式訊息。Snackbar 包含使用者可操作的選項,可為應用程式提供更優質的使用體驗。

如果您的應用程式在背景執行,而您希望使用者採取某些操作,請改為傳送通知

對浮動式訊息物件執行個體化

請使用 makeText() 方法,該方法會用到下列幾項參數:

  1. 活動 Context
  2. 應該呈現給使用者的文字。
  3. 浮動式訊息在螢幕上應該停留的時間長度。

makeText() 方法會傳回已正確初始化的 Toast 物件。

顯示浮動式訊息

若要顯示浮動式訊息,請呼叫 show() 方法,方法如以下範例所示:

Kotlin

val text = "Hello toast!"
val duration = Toast.LENGTH_SHORT

val toast = Toast.makeText(this, text, duration) // in Activity
toast.show()

Java

CharSequence text = "Hello toast!";
int duration = Toast.LENGTH_SHORT;

Toast toast = Toast.makeText(this /* MyActivity */, text, duration);
toast.show();

將浮動式訊息方法的呼叫鏈結起來

可以將方法鏈結起來,以避免停留在 Toast 物件,如以下程式碼片段所示:

Kotlin

Toast.makeText(context, text, duration).show()

Java

Toast.makeText(context, text, duration).show();