package com.llf.basemodel.utils;
import android.graphics.Color;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
import com.llf.basemodel.base.BaseApplication;
/**
* Created by llf on 2017/2/27.
* Toast工具
*/
public class ToastUtil {
private Toast mToast;
public static ToastUtil sToastUtil = new ToastUtil();
public ToastUtil() {
}
/**
* 短时间显示Toast
*/
public ToastUtil shortDuration(CharSequence message) {
if (mToast == null) {
mToast = Toast.makeText(BaseApplication.instance, message, Toast.LENGTH_SHORT);
} else {
mToast.setText(message);
mToast.setDuration(Toast.LENGTH_SHORT);
}
return this;
}
/**
* 长时间显示Toast
*/
public ToastUtil longDuration(CharSequence message) {
if (mToast == null) {
mToast = Toast.makeText(BaseApplication.instance, message, Toast.LENGTH_LONG);
} else {
mToast.setText(message);
mToast.setDuration(Toast.LENGTH_LONG);
}
return this;
}
/**
* 自定义显示Toast时间
*
* @param duration
*/
public ToastUtil indefinite(int duration) {
if (mToast != null) {
mToast.setDuration(duration);
}
return this;
}
/**
* 设置显示位置
*
* @param gravity
* @return
*/
public ToastUtil setGravity(int gravity) {
if (mToast != null) {
mToast.setGravity(gravity, 0, 0);
}
return this;
}
/**
* 设置Toast字体及背景颜色
*
* @param messageColor
* @param backgroundColor
* @return
*/
public ToastUtil setToastColor(int messageColor, int backgroundColor) {
if (mToast != null) {
View view = mToast.getView();
TextView message = ((TextView) view.findViewById(android.R.id.message));
message.setBackgroundColor(backgroundColor);
message.setTextColor(messageColor);
}
return this;
}
/**
* 设置Toast字体及背景
*
* @param messageColor
* @param background
* @return
*/
public ToastUtil setToastBackground(int messageColor, int background) {
if (mToast != null) {
View view = mToast.getView();
TextView message = ((TextView) view.findViewById(android.R.id.message));
message.setBackgroundResource(background);
view.setBackgroundColor(Color.TRANSPARENT);
message.setTextColor(messageColor);
}
return this;
}
/**
* 显示Toast
*
* @return
*/
public ToastUtil show() {
mToast.show();
return this;
}
/**
* 完全自定义布局Toast
*
* @param view
*/
public ToastUtil(View view) {
mToast = new Toast(BaseApplication.instance);
mToast.setView(view);
mToast.setDuration(Toast.LENGTH_SHORT);
mToast.show();
}
}