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(); 
            
        
    路漫漫其修远兮 吾将上下而求索
  • 相关阅读:
    MFC单文档视图设置背景
    原来这就是命令行下的“学生信息管理系统”
    C语言中数组&取地址的问题
    《逐梦旅程-Windows游戏编程之从零开始》 勘误
    杭电ACM 1003 ( 动态规划法 水题)
    《编程之美》
    [蓝桥杯][2014年第五届真题]地宫取宝
    [蓝桥杯][2013年第四届真题]危险系数
    2142: 逛超市(zznuoj)
    2141:2333(zznuoj)
  • 原文地址:https://www.cnblogs.com/hudabing/p/3741487.html
Copyright © 2011-2022 走看看