该自定义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();
}
}
网友评论