android 關於Toast重復顯示解決方法

 解決思路:   不用計算Toast的時間之類的,就是定義一個全局的成員變量Toast, 這個Toast不為null的時候才去make,否則直接setText.為瞭按返回鍵後立即使Toast不再顯示,重寫父類Activity的onBackPressed()方法裡面去cancel你的Toast即可.

 

代碼:

 

[java]  

private Toast mToast;  

    public void showToast(String text) {    

        if(mToast == null) {    

            mToast = Toast.makeText(TestActivity.this, text, Toast.LENGTH_SHORT);    

        } else {    

            mToast.setText(text);      

            mToast.setDuration(Toast.LENGTH_SHORT);    

        }    

        mToast.show();    

    }    www.aiwalls.com

        

    public void cancelToast() {    

            if (mToast != null) {    

                mToast.cancel();    

            }    

        }    

        

    public void onBackPressed() {    

            cancelToast();    

            super.onBackPressed();    

        }    

 

發佈留言

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