Toast唯一,多次点击不重复,只显示最近一次点击

  两种方式显示 : 只响应最近一次的点击,多次点击不重复,网上也有把 mToast.cancel() 抽取出来的

/**
 * 保证吐司唯一性
 *
 * @param msg 显示数据
 */
public void showMyToast(String msg) {
    if (mToast == null) {
        mToast = Toast.makeText(this, msg, Toast.LENGTH_SHORT);
    } else {
        mToast.cancel(); // 取消 Toast 重新创建
        mToast = Toast.makeText(this, msg, Toast.LENGTH_SHORT);
    }
    mToast.show();
}


public void showText(String msg) {
    if (mToast == null) {
        mToast = Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT);
    } else {
       // mToast.cancel();  ---> 加上这句, Toast就不显示了
        mToast.setText(msg);
        mToast.setDuration(Toast.LENGTH_SHORT);
    }
    mToast.show();
}

你可能感兴趣的:(Android)