Toasts 概述

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();