项目中封装的自定义Toast

本文介绍了一种在Android应用中简化Toast提示使用的封装方法。通过创建一个名为XxxToast的类,实现了对Toast显示的统一管理和控制,提高了代码的复用性和易维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android中经常用到Toast提示,项目中很多Toast提示,简单的封装一下,将Toast方法提出来,方便日常开发使用:


1.首先,封装自定义Toast(在开发中Xxx,可以使用项目名代替)

public class XxxToast {
    private static String oldMsg = "";
    protected static Toast toast = null;
    private static long oneTime = 0;
    private static long twoTime = 0;

    public static final int LENGTH_LONG = 1;
    public static final int LENGTH_SHORT = 0;

    /**
     * @param @param context 上下文
     * @param @param s 要显示的字符串
     * @param @param duration 要显示的时长,值为:LENGTH_LONG或LENGTH_SHORT
     * @return void
     * @throws
     * @Title: showToast
     * @Description: 根据传入的字符串显示toast
     */
    public static void showToast(Context context, String s, int duration) {
        try {
            if (toast == null) {
                toast = Toast.makeText(context, s, duration);
                toast.show();

                oneTime = System.currentTimeMillis();
            } else {
                twoTime = System.currentTimeMillis();
                if (s.equals(oldMsg)) {
                    if (twoTime - oneTime > duration) {
                        toast.show();
                    }
                } else {
                    oldMsg = s;
                    toast.setText(s);
                    toast.show();
                }
            }
            oneTime = twoTime;
        } catch (RuntimeException e) {
            e.getMessage();
        }
    }

    /**
     * @param @param context 上下文
     * @param @param resId 资源id
     * @param @param duration 要显示的时长,值为:LENGTH_LONG或LENGTH_SHORT
     * @return void 返回类型
     * @throws
     * @Title: showToast
     * @Description: 根据配置的字符串资源id显示toast
     */
    public static void showToast(Context context, int resId, int duration) {
        showToast(context, context.getString(resId), duration);
    }

}
2.其次,就是如何调用

XxxToast.showToast(this, "需要吐司的内容", XxxToast.LENGTH_LONG);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值