浮動式訊息會以小型的彈出式視窗提供簡單的回饋內容。它只會填滿訊息所需的空間,而目前進行中的活動仍會出現在畫面上,可以繼續進行互動。浮動式訊息會在逾時後自動消失。
舉例來說,如果您點選電子郵件上的「傳送」,就會觸發「正在傳送郵件...」的浮動式訊息,如下方螢幕截圖所示:
![圖片中的 Android 裝置顯示浮動式訊息彈出式視窗,而其中的應用程式圖示旁顯示「正在傳送郵件」](https://developer.android.google.cn/static/images/toast.png?authuser=9&hl=zh-tw)
如果您的應用程式針對的是 Android 12(API 級別 31)以上版本,那麼浮動式訊息最多只能顯示兩行文字,並會在文字旁顯示應用程式圖示。請注意,這行文字的長度會因螢幕大小而異,因此請盡量讓文字簡短。
使用浮動式訊息的替代方案
如果您的應用程式位於前景,請考慮使用 snackbar 而不要使用浮動式訊息。Snackbar 包含使用者可操作的選項,可為應用程式提供更優質的使用體驗。
如果您的應用程式在背景執行,而您希望使用者採取某些操作,請改為傳送通知。
對浮動式訊息物件執行個體化
請使用 makeText()
方法,該方法會用到下列幾項參數:
- 活動
Context
。 - 應該呈現給使用者的文字。
- 浮動式訊息在螢幕上應該停留的時間長度。
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();