`

android Toast

阅读更多

最近在做一个android项目,测试人员通过不对点击按钮,呈现出Toast,当用户退回到上一个页面时,Toast的提示信息

 

还是没有消失。

 

关于这个问题,起初我认为可以通过设置Toast的显示的时间来解决该问题,Toast.LENGTH_LONG表示的为常时间显示,

 

而Toast.LENGTH_SHORT设置的时间为短时间显示,但是情况还是没解决。

 

以前为传统的Toast.makeText(this, "aa", Toast.LENGTH_SHORT);方式显示,后来修改了Toast的现实方式为如下

 

   private void shwoToast(Context context, int resouce, int duration)
    {
        Toast toast = new Toast(this);
        toast.setDuration(duration);

        toast.setText(context.getString(resouce));
        toast.show();
    }

 

结果不但问题没解决,程序却出现了如下错误

 

Caused by: java.lang.RuntimeException: This Toast was not created with Toast.makeText()

    at android.widget.Toast.setText(Toast.java:275)

    at cn.and.ToastActivity.onCreate(ToastActivity.java:20)

    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)

    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)

 

通过查询相关的源码,具体源码如下:

  public void setText(CharSequence s) {
        if (mNextView == null) {
            throw new RuntimeException("This Toast was not created with Toast.makeText()");
        }
        TextView tv = (TextView) mNextView.findViewById(com.android.internal.R.id.message);
        if (tv == null) {
            throw new RuntimeException("This Toast was not created with Toast.makeText()");
        }
        tv.setText(s);
    }

 

如果采用上述我方式,没有设置TextView,则程序就会出现以上的错误。解决的办法是使用Toast.makeText方法创建

 

Toast即可。

 

最后通过查询相关资料,终于找到了解决办法,具体如下:

  protected void showToast(Context context, String string, int length)
    {

       //声明Toast
        Toast showToast = Toast.makeText(this, "toast text", Toast.LENGTH_SHORT);
        showToast.setText(string);
        showToast.setDuration(length);
        showToast.show();
    }

 

一定要申明Toast,在去设置Toast的相关属性值,这样才能解决多次点击Toast,返回到上一页面Toast提示信息不消失

 

的问题

 

 

 

 

分享到:
评论

相关推荐

    Android-AndroidToast即便关闭了通知权限也会正常显示

    在Android应用开发中,`Android Toast`是一种轻量级的提示机制,用于向用户显示简短的信息,通常在用户操作后出现并自动消失。标题提到的“Android Toast即便关闭了通知权限也会正常显示”是一个关键点,这涉及到...

    android Toast大全(五种情形)

    ### Android Toast 大全(五种情形) #### 一、概览 在Android开发中,`Toast`是一种轻量级的提示方式,主要用于快速显示简短的信息,如操作结果、临时提示等。它不会阻塞UI线程,也不需要用户进行任何交互即可...

    Android-AndroidToast工具类

    在Android应用开发中,`AndroidToast`工具类是一种常见的组件,用于向用户显示短暂的通知信息。这些信息通常出现在屏幕上的某个位置,展示几秒钟后自动消失,不会干扰用户的正常操作。`AndroidToast`的使用非常方便...

    C# Winform 类似Android Toast消息功能

    【C# Winform 类似Android Toast消息功能】是一种在Windows桌面应用中实现类似Android系统Toast功能的技术。在Android中,Toast是一种短暂显示信息的方式,它不会阻断用户与界面的交互,而是在屏幕某一位置短暂展示...

    Android Toast 自定义背景、图片 随心使用

    在Android开发中,`Toast`是一种轻量级的提示方式,用于向用户显示短暂的信息,如操作结果或者简单的提示。通常,`Toast`会显示一个简单的文本消息,但默认样式可能无法满足所有设计需求。本篇文章将深入探讨如何在...

    Android Toast各种使用方法及DEMO

    在Android开发中,`Toast`是一个非常常用的组件,它用于向用户显示短暂的消息提示,而不会中断当前应用程序的运行。`Toast`的消息会浮现在屏幕上方或下方,并在指定时间后自动消失,非常适合用于告知用户一些简短的...

    c# winform 类似android toast消息功能

    c# winform 类似android toast消息功能, c# winform 类似android toast消息功能,不能选0分,所以选了最小的分,望见谅.. 转载:...

    Android Toast实现弹出层源码解析.rar

    Android Toast使用解析附代码,实现类似WEB开发中的弹出层效果,当用户点击一个链接或操作按钮时,会弹出一个操作层(浮动层)或浮动菜单,进而执行下一步操作。本源码是使用Android中的Toast对象来模拟实现网页中的...

    Android Toast练习

    在Android开发中,`Toast`和`Notification`是两种重要的用户反馈机制,它们用于向用户显示短暂或持久的信息。在这个“Android Toast练习”项目中,我们主要关注的是`Toast`的使用,它是一种轻量级的提示方式,用于在...

    ReactNativeToast一个用于android和ios类似于androidtoast提示控件

    React Native Toast是一个跨平台的组件,它为Android和iOS提供了类似Android原生Toast的功能。这个组件使得开发者在使用React Native进行混合移动应用开发时,能够方便地实现快速、简洁的提示信息显示,无论是在...

    Android Toast 大全

    Android Toast 大全 (五种形式) 建立属于自己的 Toast

    androidToast大全(五种情形)[归类].pdf

    Android Toast是一种轻量级的消息提示机制,用于向用户显示一些提示信息,而不会打断用户当前的操作。Toast通常用于显示简短的消息,并且它会自动消失。由于其简单性和实用性,Toast成为Android开发中不可或缺的组件...

    Android-对标准AndroidToast进行美化的一个库

    标准的Android `Toast`虽然功能基础,但有时可能无法满足开发者对于界面美观度和个性化的需求。针对这种情况,出现了一种专门用于美化Android `Toast`的库,名为"Muddz-StyleableToast"。这个库为开发者提供了丰富的...

    android自定义Toast设定显示时间

    Android 自定义 Toast 设定显示时间是指在 Android 应用程序中,自定义 Toast 的显示时间,而不是使用系统默认的 Toast.LENGTH_SHORT 或 Toast.LENGTH_LONG。本文将详细介绍如何使用 WindowManager 实现自定义 Toast...

    android Toast大全(五种情形 && 字体颜色)

    在Android开发中,`Toast` 是一种非常常用的组件,它能快速、简洁地向用户展示一些简短的信息,比如提示或者警告,而不会中断用户的操作。`Toast` 的出现时间短暂,一般会在几秒钟后自动消失。在Android应用中,我们...

    自定义Android Toast Demo

    在Android开发中,`Toast`是一种轻量级的提示方式,用于向用户显示短暂的信息,不会阻断用户的操作。默认的`Toast`虽然方便,但其样式和展示内容较为单一,有时不能满足开发者的需求。因此,自定义`Toast`成为了一个...

    Android Toast任意显示时间

    在Android开发中,`Toast`是一种轻量级的提示方式,通常用来向用户展示短暂的信息。默认情况下,`Toast`的显示时间是固定的,分为短时间和长时间两种,无法自定义。`Android Toast任意显示时间`这个主题就是针对这一...

    Android Toast 多元化自定义

    在Android开发中,`Toast`是一种轻量级的提示方式,用于短暂地显示信息,而不会中断用户操作。默认的`Toast`样式较为单一,仅能显示简单的文本信息。但在实际应用中,开发者可能需要更加多元化的提示效果,如带有...

Global site tag (gtag.js) - Google Analytics