zoukankan      html  css  js  c++  java
  • Android Toast 封装,避免Toast消息覆盖,替换系统Toast最好用的封装

    Android Toast 封装,避免Toast消息覆盖,无阻塞,等强大功能

     
     
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    import android.content.Context; 
    import android.os.Handler; 
    import android.os.Looper; 
    import android.widget.Toast; 
       
    /**
     * Toast工具类
     * @author WikerYong   Email:<a href="#">yw_312@foxmail.com</a>
     * @version 2012-5-21 下午9:21:01
     */ 
    public class ToastUtils { 
        private static Handler handler = new Handler(Looper.getMainLooper()); 
        private static Toast toast = null
        private static Object synObj = new Object(); 
       
        /**
         * Toast发送消息,默认Toast.LENGTH_SHORT
         * @author WikerYong   Email:<a href="#">yw_312@foxmail.com</a>
         * @version 2012-5-22 上午11:13:10
         * @param act
         * @param msg
         */ 
        public static void showMessage(final Context act, final String msg) { 
            showMessage(act, msg, Toast.LENGTH_SHORT); 
        
           
        /**
         * Toast发送消息,默认Toast.LENGTH_LONG
         * @author WikerYong   Email:<a href="#">yw_312@foxmail.com</a>
         * @version 2012-5-22 上午11:13:10
         * @param act
         * @param msg
         */ 
        public static void showMessageLong(final Context act, final String msg) { 
            showMessage(act, msg, Toast.LENGTH_LONG); 
        
       
        /**
         * Toast发送消息,默认Toast.LENGTH_SHORT
         * @author WikerYong   Email:<a href="#">yw_312@foxmail.com</a>
         * @version 2012-5-22 上午11:13:35
         * @param act
         * @param msg
         */ 
        public static void showMessage(final Context act, final int msg) { 
            showMessage(act, msg, Toast.LENGTH_SHORT); 
        
           
        /**
         * Toast发送消息,默认Toast.LENGTH_LONG
         * @author WikerYong   Email:<a href="#">yw_312@foxmail.com</a>
         * @version 2012-5-22 上午11:13:35
         * @param act
         * @param msg
         */ 
        public static void showMessageLong(final Context act, final int msg) { 
            showMessage(act, msg, Toast.LENGTH_LONG); 
        
       
        /**
         * Toast发送消息
         * @author WikerYong   Email:<a href="#">yw_312@foxmail.com</a>
         * @version 2012-5-22 上午11:14:09
         * @param act
         * @param msg
         * @param len
         */ 
        public static void showMessage(final Context act, final int msg, 
                final int len) { 
            new Thread(new Runnable() { 
                public void run() { 
                    handler.post(new Runnable() { 
       
                        @Override 
                        public void run() { 
                            synchronized (synObj) { 
                                if (toast != null) { 
                                    toast.cancel(); 
                                    toast.setText(msg); 
                                    toast.setDuration(len); 
                                } else
                                    toast = Toast.makeText(act, msg, len); 
                                
                                toast.show(); 
                            
                        
                    }); 
                
            }).start(); 
        
           
        /**
         * Toast发送消息
         * @author WikerYong   Email:<a href="#">yw_312@foxmail.com</a>
         * @version 2012-5-22 上午11:14:27
         * @param act
         * @param msg
         * @param len
         */ 
        public static void showMessage(final Context act, final String msg, 
                final int len) { 
            new Thread(new Runnable() { 
                public void run() { 
                    handler.post(new Runnable() { 
       
                        @Override 
                        public void run() { 
                            synchronized (synObj) { 
                                if (toast != null) { 
                                    toast.cancel(); 
                                    toast.setText(msg); 
                                    toast.setDuration(len); 
                                } else
                                    toast = Toast.makeText(act, msg, len); 
                                
                                toast.show(); 
                            
                        
                    }); 
                
            }).start(); 
        
       
        /**
         * 关闭当前Toast
         * @author WikerYong   Email:<a href="#">yw_312@foxmail.com</a>
         * @version 2012-5-22 上午11:14:45
         */ 
        public static void cancelCurrentToast() { 
            if (toast != null) { 
                toast.cancel(); 
            
        
    路漫漫其修远兮 吾将上下而求索
  • 相关阅读:
    互联网产品跨部门沟通的10个原则(转)
    Axure 全局辅助线(转)
    2015最新移动App设计尺寸视觉规范【图文版】(转)
    iOS和Android的app界面设计规范(转)
    安卓app设计规范整理和Android APP设计篇(转)
    19条ANDROID平台设计规范(转)
    Objective-C编码规范:26个方面解决iOS开发问题(转)
    AxureRP7.0各类交互效果汇总帖(转)
    Windows Server 2016与旧版本系统比较
    application Initialization设置导致处理程序ExtensionlessUrlHandler-Integrated-4.0在其模块列表中有一个错误模块问题的解决
  • 原文地址:https://www.cnblogs.com/hudabing/p/3741487.html
Copyright © 2011-2022 走看看