Toast 概述

Toast 在一个小弹出窗口中提供关于操作的简单反馈。它只填充消息所需的空间量,当前活动仍然可见且可交互。Toast 会在超时后自动消失。

例如,点击电子邮件上的**发送**会触发“正在发送消息...”Toast,如下面的屏幕截图所示

Image of Android device showing a toast popup reading
            'Sending message' next to an app icon

如果您的应用面向 Android 12(API 级别 31)或更高版本,则其 Toast 限制为两行文本,并在文本旁边显示应用图标。请注意,此文本的行长会因屏幕大小而异,因此最好使文本尽可能简短。

Toast 的替代方法

如果您的应用处于前台,请考虑使用Snackbar 而不是 Toast。Snackbar 包括用户可操作的选项,可以提供更好的应用体验。

如果您的应用处于后台,并且您希望用户执行某些操作,请改用通知

实例化 Toast 对象

使用makeText() 方法,该方法采用以下参数

  1. 活动Context
  2. 应显示给用户的文本。
  3. Toast 应在屏幕上保留的持续时间。

makeText() 方法返回一个正确初始化的Toast 对象。

显示 Toast

要显示 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 方法调用

您可以链接您的方法以避免保留Toast 对象,如下面的代码片段所示

Kotlin

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

Java

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