您的位置:首页 > 其它

Toast短时间内多次显示同一个提示信息只显示一次

2017-12-27 11:39 344 查看
有时候点击某个控件的时候需要弹出提示框,比如一个控件有判空操作,连续多次点击多少次就会提示多少次,用户体验就会很差

public class ToastUtils {

private static Toast toast;
private static long oneTime = 0;
private static long twoTime = 0;
private static CharSequence info = "";

/***显示*/
public static void show(Context context, CharSequence text) {
show(context, text, Toast.LENGTH_SHORT);
}

private static void show(Context context, CharSequence text, int duration) {
try {
if (toast == null) {
toast = Toast.makeText(context, text, duration);
toast.show();
oneTime = System.currentTimeMillis();
}else{
twoTime = System.currentTimeMillis();
if (info.equals(text)){
if (twoTime - oneTime > Toast.LENGTH_SHORT){
toast.show();
}
}else{
info = text;
toast.setText(text);
toast.show();
}
}
oneTime = twoTime;
}catch (Exception e){
e.printStackTrace();
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐