重复弹Toast的解决方案

来源:互联网 发布:mac日本价格 编辑:程序博客网 时间:2024/06/05 03:35

虽然网上有很多了,还是记录一下吧,

解决思路:不用计算Toast的时间之类的,就是定义一个全局的成员变量Toast, 这个Toast不为null的时候才去make,否则直接setText.为了按返回键后立即使Toast不再显示,重写父类Activity的onBackPressed()方法里面去cancel你的Toast即可.


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();       }              public void cancelToast() {               if (mToast != null) {                   mToast.cancel();               }           }              public void onBackPressed() {               cancelToast();               super.onBackPressed();           } 


原创粉丝点击