解決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消息框。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM