解决Toast重复弹出,Toast单例模式

来源:互联网 发布:php 明天时间戳 编辑:程序博客网 时间:2024/06/05 08:17

防止Toast多次弹出,网上看到的不错

import android.content.Context;
import android.widget.Toast;
/**
* @create date:2013-7-16
* @class describe:解决Toast重复弹出
*/

public class ToastUtil3 {
 
 
     private static String oldMsg; 
        protected static Toast toast   = null; 
        private static long oneTime=0
        private static long twoTime=0
 
        public static void showToast(Context context, String s){     
            if(toast==null){  
                toast =Toast.makeText(context, s, Toast.LENGTH_SHORT); 
                toast.show(); 
                oneTime=System.currentTimeMillis(); 
            }else
                twoTime=System.currentTimeMillis(); 
                if(s.equals(oldMsg)){ 
                    if(twoTime-oneTime>Toast.LENGTH_SHORT){ 
                        toast.show(); 
                    } 
                }else
                    oldMsg = s; 
                    toast.setText(s); 
                    toast.show(); 
                }        
            } 
            oneTime=twoTime; 
        } 
 
 
        public static void showToast(Context context, int resId){    
            showToast(context, context.getString(resId)); 
        } 
 
 
}

0 0
原创粉丝点击