Toast类避免显示时间叠加的方法

时间:2021-05-20

本文为大家分享了Toast类避免显示时间叠加的方法,供大家参考,具体内容如下

import android.app.Activity;import android.app.Fragment;import android.content.Context;import android.widget.Toast; /** * Toast工具类 * Created by user on 2016/12/22. */ public class ToastUtil { private static Toast toast = null; private static ToastUtil toastUtil = null; public ToastUtil(){} public synchronized static ToastUtil getInstance(){ if(null == toastUtil){ toastUtil = new ToastUtil(); } return toastUtil; } public void showToast(Context context, String string){ if(toast != null){ toast.cancel(); } toast = Toast.makeText(context, string,Toast.LENGTH_SHORT); toast.show(); } public void showToast(Fragment fragment, String string){ showToast(fragment.getActivity(),string); } public void showToast(Activity activity, String string){ if(toast != null){ toast.cancel(); } toast = Toast.makeText(activity, string,Toast.LENGTH_SHORT); toast.show(); } public void showToastTest(Context context){ if(toast != null){ toast.cancel(); } toast = Toast.makeText(context, "click",Toast.LENGTH_SHORT); toast.show(); } public void showToastTest(Fragment fragment){ showToastTest(fragment.getActivity()); } public void showToastTest(Activity activity){ if(toast != null){ toast.cancel(); } toast = Toast.makeText(activity, "click",Toast.LENGTH_SHORT); toast.show(); }} if(null == toastUtil){ toastUtil = new ToastUtil(); } return toastUtil; }public void showToastInThread(Context context,String msg){ Looper.prepare(); if(toast != null){ toast.cancel(); } toast = Toast.makeText(context,msg,Toast.LENGTH_SHORT); toast.show(); Looper.loop(); } public void showToast(Context context, String string){ if(toast != null){ toast.cancel(); } toast = Toast.makeText(context, string,Toast.LENGTH_SHORT); toast.show(); } }

这是一个封装好的Toast工具类,避免时间叠加

使用方法

ToastUtil.getInstance().showToast(mContext,"test");

如果在线程中执行的话,必须按照如下格式

ToastUtil.getInstance().showToastInThread(mContext,"str");

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章