如何取消Toast的显示

有时候点击按钮会出现提示Toast,如果多次点击,就会一直累计出现,即使你离开这个Activity还是会出现知道最后一Toast显示完,有什么办法让一离开,比如按back键就不让这些Toast显示呢?下面这个方法来自于网络,本人已经测试过完全可行!

我这里有一个方法,实现起来比较简单,也不用计算Toast的时间之类的,
就是定义一个全局的成员变量Toast, 这个Toast不为null的时候才去make,否则直接setText.
为了按返回键后立即使Toast不再显示,重写父类Activity的onBackPressed()方法里面去cancel你的Toast即可

直接上代码:

   
  
  
  1. private Toast mToast;
  2.     public void showToast(String text) {  
  3.         if(mToast == null) {  
  4.             mToast = Toast.makeText(MobileSendTopicActivity.this, text, Toast.LENGTH_SHORT);  
  5.         } else {  
  6.             mToast.setText(text);    
  7.             mToast.setDuration(Toast.LENGTH_SHORT);  
  8.         }  
  9.         mToast.show();  
  10.     }  
  11.      
  12.     public void cancelToast() {  
  13.             if (mToast != null) {  
  14.                 mToast.cancel();  
  15.             }  
  16.     }  
  17.      
  18.     public void onBackPressed() {  
  19.             cancelToast();  
  20.             super.onBackPressed();  
  21.    }  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值