解決Android Toast重復顯示等待時間過長的問題

Toast是一種簡易的消息提示框,它無法獲取焦點,按設置的時間來顯示完以後會自動消失。一般用於幫助或提示。

 

當觸發點擊事件顯示toast信息時,如果設置瞭時間長短類型為LENGTH_LONG,雖然回到後臺運行,但是依然會顯示toast信息,尤其是當連續點擊時,toast就會排隊等待直到所有toast顯示完畢,這種界面的用戶體驗是很差的。

 

→ 1 toast         2  toast       3 toast         4 toast         5 toast         →

為瞭避免這種問題,可以再toast信息顯示的地方加個判斷,方法如下:

 

復制代碼

private Context mcontext;

private Toast mtoast;

 

if(mtoast!=null)

{

    mtoast.setText(R.string.neterror);    

}

else

{

    /*

     * 第一個參數:當前的上下文環境,用this或getApplicationContext()表示。

     * 第二個參數:顯示的字符串,用R.string表示。

     * 第三個參數:顯示的時間長短。用LENGTH_LONG(長)或LENGTH_SHORT(短)表示,也可以用毫秒。

     */

    mtoast=Toast.makeText(mcontext,R.string.neterror, Toast.LENGTH_SHORT);

mtoast.show(); //顯示toast信息

復制代碼

另外,還可以通過設置Toast的其他屬性來設計自己風格的Toast消息框。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *