Android避免反复弹出同一Toast

来源:互联网 发布:网络证券交易平台 编辑:程序博客网 时间:2024/06/11 02:20

前言

在Android开发中,当我们使用Toast提示一些消息的时候,比如点击某个按钮或者其它某个操作后会提示一条Toast,而Toast是会持续一段时间再消失的,但是当用户疯狂点击了这个按钮或者某个操作后,可能就会造成一条Toast反复弹出很多次,持续较长时间,这也许是我们不希望看到的,所以我们可以设定一个显示的时间间隔


代码

package com.example.msi_cn.myapplication;import android.content.Context;import android.widget.Toast;public class ToastUtil {    private static String oldMsg;    private static long time;    public static void showToast(Context context, String msg, int duration) {        if (!msg.equals(oldMsg)) { // 当显示的内容不一样时,即断定为不是同一个Toast            Toast.makeText(context, msg, duration).show();            time = System.currentTimeMillis();        } else {            // 显示内容一样时,只有间隔时间大于2秒时才显示            if (System.currentTimeMillis() - time > 2000) {                Toast.makeText(context, msg, duration).show();                time = System.currentTimeMillis();            }        }        oldMsg = msg;    }}

我们判断当为同一个Toast的时候只有显示的间隔时间大于2秒额时候才会继续弹出Toast。

至于这个间隔时间,你也可以根据你的喜好来设定

1 0
原创粉丝点击