亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android中使用Toast.cancel()方法優化toast內容顯示的解決方法

2020-04-11 12:25:18
字體:
來源:轉載
供稿:網友

產品在測試過程中發現一個bug,就是測試人員不停的瘋狂的點擊某個按鈕,觸發了toast以后,toast內容會一直排著隊的顯示出來,不能很快的消失。這樣可能會影響用戶的使用。

看到Toast有一個cancel()方法:

復制代碼 代碼如下:

void cancel()
Close the view if it's showing, or don't show it if it isn't showing yet.

做程序員的,基本一看api就知道,用這個可以取消上一個toast的顯示,然后顯示下一個,這樣就能解決出現的問題。可是在測試的過程中,發現卻沒有想象中的那么簡單,不信可以百度一下,很多很多人發現toast的cancel()方法不起作用。還是不講具體過程,只講結果吧。

我把toast做成了一個應用類,方便使用,大家可以直接用:

復制代碼 代碼如下:

package com.arui.framework.android.util; 

import android.content.Context; 
import android.os.Handler; 
import android.os.Looper; 
import android.widget.Toast; 

復制代碼 代碼如下:

/**   
 * Toast util class.   
 *    
 * @author <A >http://VeVB.COm</A>   
 * @version 2011/11/30   
 *    
 */  
public class ToastUtil { 

    private static Handler handler = new Handler(Looper.getMainLooper()); 

    private static Toast toast = null; 

    private static Object synObj = new Object(); 

    public static void showMessage(final Context act, final String msg) { 
        showMessage(act, msg, Toast.LENGTH_SHORT); 
    } 

    public static void showMessage(final Context act, final int msg) { 
        showMessage(act, msg, Toast.LENGTH_SHORT); 
    } 

    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(); 
    } 

 
    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的內容至少可以顯示出來,而不是還沒顯示就取消掉了。這樣做,是因為toast的內容不一定完全相同,如果沒顯示出來,也會有問題。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久国产视频网站| 久久久免费电影| 91沈先生作品| 岛国精品视频在线播放| 久久久免费精品| 日韩欧美中文免费| 九九热这里只有精品6| 欧美成人免费观看| 一区二区三区日韩在线| 日韩在线观看视频免费| 97婷婷涩涩精品一区| 久久天堂电影网| 91tv亚洲精品香蕉国产一区7ujn| 久久精品2019中文字幕| 一个人看的www久久| 色先锋资源久久综合5566| 日韩国产高清污视频在线观看| 国产精品自拍偷拍| 2019中文字幕免费视频| 国产精品美女网站| 日韩av免费在线| wwwwwwww亚洲| 国产一区二区av| 国产精品国产三级国产aⅴ9色| 色偷偷偷亚洲综合网另类| 精品一区二区三区电影| 成人写真视频福利网| 成人久久一区二区| 日韩精品久久久久久福利| 精品自拍视频在线观看| 国产精品成人免费视频| 国产精品一区专区欧美日韩| 欧美黑人巨大精品一区二区| 91av在线播放视频| 2019中文字幕在线| 国产欧美精品va在线观看| 欧美激情欧美狂野欧美精品| 狠狠色狠狠色综合日日五| 最近免费中文字幕视频2019| 欧美性猛交xxxx久久久| 亚洲午夜精品视频| 91精品视频播放| 久久久久久久国产| 亚洲国产婷婷香蕉久久久久久| 国产精品自拍小视频| 国产视频久久网| 久久夜色精品国产亚洲aⅴ| 国产综合久久久久| 精品国产精品三级精品av网址| 久久亚洲欧美日韩精品专区| 成人两性免费视频| 欧美专区福利在线| 欧美性黄网官网| 国产欧美日韩精品丝袜高跟鞋| 人妖精品videosex性欧美| 久久精品国产亚洲7777| 中文字幕精品一区二区精品| 欧美日韩在线一区| 久久人91精品久久久久久不卡| 久久久亚洲国产天美传媒修理工| 国自在线精品视频| 国产精品高清在线| 性色av一区二区三区在线观看| 欧美亚洲成人精品| 久久网福利资源网站| 国产精品久久久久7777婷婷| 国产欧美久久久久久| 色综合久久天天综线观看| 亚洲视频综合网| 最近2019中文字幕在线高清| 国产69久久精品成人看| 欧美激情第一页xxx| 亚洲综合自拍一区| 欧美日韩视频在线| 久久久久久久久久久免费精品| 中文字幕日韩欧美| 搡老女人一区二区三区视频tv| 日韩免费观看高清| 欧美另类极品videosbest最新版本| 久久综合伊人77777尤物| 国产精品视频白浆免费视频| 91在线网站视频| 亚洲精品www久久久久久广东| 欧美视频第一页| 欧美在线精品免播放器视频| 亚洲a一级视频| 久久中国妇女中文字幕| 91成人免费观看网站| 国产精品一区二区三区久久久| 欧美性生交xxxxxdddd| 亚洲精品电影网| 亚洲小视频在线观看| 影音先锋欧美在线资源| 国产精品一区久久久| 国产精品日日做人人爱| 国产一区香蕉久久| 国产丝袜视频一区| 亚洲综合国产精品| 91av在线播放| 欧美二区乱c黑人| 欧美午夜久久久| 国产做受69高潮| 久久久天堂国产精品女人| 久久久日本电影| 91精品视频观看| 国产精品一区av| 51精品在线观看| 亚洲理论在线a中文字幕| 国产亚洲精品一区二555| 成人黄色在线免费| 欧美成人三级视频网站| 亚洲色图五月天| 国产欧洲精品视频| 国产日韩欧美夫妻视频在线观看| 国产精品欧美日韩一区二区| 97成人在线视频| 亚洲国产精品高清久久久| 国产精品久久久久91| 久久久国产精彩视频美女艺术照福利| 亚洲经典中文字幕| 欧美激情第1页| 狠狠色狠狠色综合日日五| 国产精品精品久久久久久| 成人亚洲欧美一区二区三区| 亚洲欧美日韩在线高清直播| 欧美激情一区二区三区成人| 中文字幕日韩在线播放| 国产精品福利小视频| 成人精品在线视频| 91精品在线播放| 亚洲电影第1页| 中文字幕欧美精品在线| 91国偷自产一区二区三区的观看方式| 亚洲成年人在线播放| 日韩最新av在线| 色综久久综合桃花网| 久久精品成人一区二区三区| 亚洲精品美女网站| 精品美女国产在线| 日韩精品免费在线| 最近的2019中文字幕免费一页| 91久久综合亚洲鲁鲁五月天| 久久影视电视剧免费网站| 精品久久久久久亚洲精品| 国产精品99久久久久久久久久久久| 97香蕉超级碰碰久久免费的优势| 欧美一区第一页| 91精品国产精品| 日韩av影院在线观看| 91久久久国产精品| 在线成人免费网站| 国产精品美乳在线观看| 欧美性猛交xxxx富婆| 韩剧1988免费观看全集| 国产视频久久久久| 国产精品亚洲片夜色在线| 亚洲成人网av| 7777免费精品视频| 日本午夜在线亚洲.国产| 色偷偷av一区二区三区| 亚洲精品国产福利| 欧美日韩一区二区在线| 91人成网站www| 亚洲一区二区三区在线免费观看|