Android弹出Toast工具类总结

Posted hsqdboke

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android弹出Toast工具类总结相关的知识,希望对你有一定的参考价值。

 android弹出Toast工具类总结,包括系统自带的,也包括自定义的。

 

public class ToastUtil {
    public ToastUtil() {
    }

    public static Toast showShortToast(Context context, String text) {
        Toast toast = Toast.makeText(context, text, 0);
        toast.show();
        return toast;
    }

    public static Toast showShortToastCenter(Context context, String text) {
        Toast toast = Toast.makeText(context, text, 0);
        toast.setGravity(17, 0, 0);
        toast.show();
        return toast;
    }

    public static Toast showShortToast(Context context, @StringRes int textResId) {
        Toast toast = Toast.makeText(context, I18nUtil.getString(textResId, new Object[0]), 0);
        toast.show();
        return toast;
    }

    public static Toast showLongToast(Context context, String text) {
        Toast toast = Toast.makeText(context, text, 1);
        toast.show();
        return toast;
    }

    public static Toast showLongToast(Context context, @StringRes int textResId) {
        Toast toast = Toast.makeText(context, I18nUtil.getString(textResId, new Object[0]), 1);
        toast.show();
        return toast;
    }

    public static Toast showLongToastImage(Context context, @DrawableRes int imgResId) {
        Toast toast = new Toast(context);
        FrameLayout fl = new FrameLayout(context);
        ImageView iv = new ImageView(context);
        iv.setImageResource(imgResId);
        fl.addView(iv);
        toast.setView(fl);
        toast.setDuration(1);
        toast.show();
        return toast;
    }

    public static Toast showToastWithIcon(Context context, String text, @DrawableRes int img, OnAttachStateChangeListener listener, int duration) {
        Toast toast = new Toast(context);
        View container = View.inflate(context, layout.view_custom_toast_action_success, (ViewGroup)null);
        if(listener != null) {
            container.addOnAttachStateChangeListener(listener);
        }

        TextView tv = (TextView)container.findViewById(id.view_toast_text_img_tv);
        ImageView iv = (ImageView)container.findViewById(id.view_toast_text_img_iv);
        toast.setGravity(119, 0, 0);
        toast.setDuration(duration);
        toast.setView(container);
        tv.setText(text);
        iv.setImageResource(img);
        toast.show();
        return toast;
    }

    public static Toast showToastWithIcon(Context context, @StringRes int text, @DrawableRes int img, OnAttachStateChangeListener listener, int duration) {
        return showToastWithIcon(context, I18nUtil.getString(text, new Object[0]), img, listener, duration);
    }
}

 

以上是关于Android弹出Toast工具类总结的主要内容,如果未能解决你的问题,请参考以下文章

Android基础工具类重构系列一Toast

android自定义Toast之-弹出消息

Android开发_弹出小小提示框_Toast

Android Toast 工具类

安卓---Toast工具类,有点懒

工作5年才知道的Android新版本使用Toast的那些坑,已给你总结好