Toast多次弹出的解决办法,随时取消已经弹出的Toast

时间:2021-04-16 10:54:03

废话不多说先看源码:

@Override
public void onClick(View view) {
    int id=view.getId();
    switch (id){
        case R.id.button1:
            showToast("显示");
            break;
        case R.id.button2:
            cancleToast();
            break;
    }
}
private void showToast(String text){
    if (mToast==null){
        mToast=Toast.makeText(this, text+"", Toast.LENGTH_SHORT);
    }else{
        mToast.setText(text+"");
        mToast.setDuration(Toast.LENGTH_SHORT);
    }
    mToast.show();
}
private void cancleToast(){
    if (mToast!=null){
        mToast.cancel();
    }
}
Toast的属性有很多

控制它的显示位置,时长,内容等

不多次显示的关键就是不在创建新的事例