Android 显示吐司消息

示例

在Android中,Toast是一个简单的UI元素,可用于向用户提供上下文反馈。

要显示一条简单的Toast消息,我们可以执行以下操作。

// 声明用于Toast的参数

Context context = getApplicationContext(); 
// in an Activity, you may also use "this"
// 在一个片段中,可以使用getActivity()

CharSequence message = "I'm an Android Toast!";
int duration = Toast.LENGTH_LONG; //Toast.LENGTH_SHOR是另一个选项

// 创建Toast对象,然后显示它!
Toast myToast = Toast.makeText(context, message, duration);
myToast.show();

或者,要显示内联的Toast,而无需保留Toast对象,您可以:

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

重要说明:确保show()从UI线程调用了该方法。如果您尝试Toast从其他线程显示a ,则可以使用的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() {
            // 您的代码在这里
        }
    });