前言
在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。
至于这个间隔时间,你也可以根据你的喜好来设定