自定义控件傲视苍穹《Android》VIP专题

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

2020-08-09  本文已影响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();

    }

}

上一篇下一篇

猜你喜欢

热点阅读