花了两个小时写的自定义Toast

作者: 加油小李 | 来源:发表于2020-08-09 00:02 被阅读0次

    该自定义Toast 可以指定Toast 背景色,文本大小,文本颜色,是否在文本左侧显示logo,logo大小以及logo在文本左侧多远

    废话不多说上代码

    自定义Toast

    贴代码

    package com.fastquery.weiget;

    import android.content.Context;

    import android.view.Gravity;

    import android.view.LayoutInflater;

    import android.view.View;

    import android.widget.ImageView;

    import android.widget.TextView;

    import android.widget.Toast;

    import com.fastquery.R;

    public class CustomToastX {

    /**

        * 通用自定义Toast

    *

        * @backgroundColor Toast背景色

        * @text 文本

        */

        public static void showToast(Context context, int backgroundColor, String text) {

    Toast toast =new Toast(context);

            View view = LayoutInflater.from(context).inflate(R.layout.custom_toast, null);

            view.setBackgroundColor(backgroundColor);

            TextView textView = view.findViewById(R.id.toast_text);

            textView.setText(text);

            toast.setGravity(Gravity.CENTER, 0, 0);

            toast.setView(view);

            toast.setDuration(Toast.LENGTH_SHORT);

            toast.show();

        }

    /**

        * 自定义Toast居中

        *

        * @backgroundColor toast背景色

        * @text 文本

        * @textColor 文本颜色

        * @textSize 文本大小

        */

        public static void showToast(Context context, int backgroundColor, String text, int textColor, int textSize) {

    Toast toast =new Toast(context);

            View view = LayoutInflater.from(context).inflate(R.layout.custom_toast, null);

            view.setBackgroundColor(backgroundColor);

            TextView textView = view.findViewById(R.id.toast_text);

            textView.setText(text);

            toast.setGravity(Gravity.CENTER, 0, 0);

            toast.setView(view);

            toast.setDuration(Toast.LENGTH_SHORT);

            toast.show();

        }

    /**

        * 自定义Toast自定义位置

        *

        * @backgroundColor toast背景色

        * @text 文本

        * @textColor 文本颜色

        * @textSize 文本大小

        * @x 从屏幕中心向右坐标

        * @y 从屏幕中心向上坐标

        */

        public static void showToast(Context context, int backgroundColor, String text, int textColor, int textSize, int x, int y) {

    Toast toast =new Toast(context);

            View view = LayoutInflater.from(context).inflate(R.layout.custom_toast, null);

            view.setBackgroundColor(backgroundColor);

            TextView textView = view.findViewById(R.id.toast_text);

            textView.setText(text);

            toast.setGravity(Gravity.CENTER, x, y);

            toast.setView(view);

            toast.setDuration(Toast.LENGTH_SHORT);

            toast.show();

        }

    /**

        * 自定义Toast+logo+自定义位置

        *

        * @backgroundColor 背景色

        * @text 文本

        * @textColor 文本颜色

        * @textSize 文本大小

        * @drawable 图片

        * @drawableSize 图片大下

        * @textToDrawableLeftPadding 图片在文字左侧边距

        * @x 从屏幕中心向右坐标

        * @y 从屏幕中心向下坐标

        */

        public static void showToast(Context context, int backgroundColor, String text, int textColor, int textSize, int drawable, int drawableSize, int textToDrawableLeftPadding, int x, int y) {

    Toast toast =new Toast(context);

            View view = LayoutInflater.from(context).inflate(R.layout.custom_toast, null);

            view.setBackgroundColor(backgroundColor);

            ImageView logo = view.findViewById(R.id.iv_logo);

            logo.setVisibility(View.VISIBLE);

            logo.setBackgroundResource(drawable);

            logo.setMaxWidth(drawableSize);

            logo.setMaxHeight(drawableSize);

            TextView textView = view.findViewById(R.id.toast_text);

            textView.setText(text);

            textView.setTextColor(textColor);

            textView.setTextSize(textSize);

            textView.setPadding(textToDrawableLeftPadding, 0, 0, 0);

            toast.setGravity(Gravity.CENTER, x, y);

            toast.setView(view);

            toast.setDuration(Toast.LENGTH_SHORT);

            toast.show();

        }

    }

    相关文章

      网友评论

        本文标题:花了两个小时写的自定义Toast

        本文链接:https://www.haomeiwen.com/subject/czjfdktx.html