码迷,mamicode.com
首页 > 其他好文 > 详细

自定义Toast解决快速点击时重复弹出,排队无止尽

时间:2016-11-24 18:30:36      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:lis   short   context   地方   make   one   equals   显示   ast   

解决办法:自定义MyToast类:

public class MyToast {
/** 之前显示的内容 */
private static String oldMsg ;
/** Toast对象 */
private static Toast toast = null ;
/** 第一次时间 */
private static long oneTime = 0 ;
/** 第二次时间 */
private static long twoTime = 0 ;
/**
* 显示Toast
* @param context
* @param message
*/
public static void showToast(Context context, String message){
if(toast == null){
toast = Toast.makeText(context, message, Toast.LENGTH_SHORT);
toast.show() ;
oneTime = System.currentTimeMillis() ;
}else{
twoTime = System.currentTimeMillis() ;
if(message.equals(oldMsg)){
if(twoTime - oneTime > Toast.LENGTH_SHORT){
toast.show() ;
}
}else{
oldMsg = message ;
toast.setText(message) ;
toast.show() ;
}
}
oneTime = twoTime ;
}
}
调用就很简单了,在要用的地方:
MyToast.showToast(Activity.this, "获取数据异常");



自定义Toast解决快速点击时重复弹出,排队无止尽

标签:lis   short   context   地方   make   one   equals   显示   ast   

原文地址:http://www.cnblogs.com/lucky-zhu/p/6098732.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!