Android 本次Toast取消上次的Toast的思路

0.前言

在Android开发中,经常会出现这样一种情况(特别在调试程序的时候),需要大量的使用Toast,但是即使Toast的时间很短,上次的Toast没有跑完的时候下次Toast也没办法立即执行,一定要等上次的Toast完全执行完成以后才会执行下次的Toast。在本篇教程中,我们主要依靠Toast.cancel方法来达到这种效果。

1.实现以及调用

1.1具体的Java实现

import android.content.Context;
import android.widget.Toast;

/**
 * @author HUPENG 
 */
public class ToastUtil {
    /**
     * Toast实例,用于对本页出现的所有Toast进行处理
     */
    private static Toast myToast;

    /**
     * 此处是一个封装的Toast方法,可以取消掉上一次未完成的,直接进行下一次Toast
     * @param context context
     * @param text 需要toast的内容
     */
    public static void toast(Context context, String text){
        if (myToast != null) {
            myToast.cancel();
            myToast=Toast.makeText(context,text,Toast.LENGTH_SHORT);
        }else{
            myToast=Toast.makeText(context,text,Toast.LENGTH_SHORT);
        }
        myToast.show();
    }
}

1.2 调用

样例调用

ToastUtil.toast(ReceiveActivity.this,"hello world!");

注意第一个参数为

android.content.Context

这种类型的

你可能感兴趣的:(android)