Toast工具类
Android 中 Toast的封装使用
/**
-
Toast工具类
-
Create by MR.Z on 2019/6/12
*/
public class ToastUtil {
// private static Toast toast;/**
- 在非UI线程中,这个方法可以将Toast显示在UI线程
- 原理,追加toast在消息队列中
- 千万别在UI线程中使用
*/
public static void showOnUIThread(Context context, final CharSequence text) {
Looper.prepare();
showToast(context, text, Toast.LENGTH_SHORT, Gravity.CENTER);
Looper.loop();
}
private static void showToast(Context context, CharSequence msg, int duration, int gravity) {
// if (toast == null) {
Toast toast = Toast.makeText(context, msg, duration);
// }else {
// toast.setText(msg);
// }
toast.setGravity(gravity, 0, 100);
toast.show();
}private static void showToast(Context context, int strId, int duration, int gravity) {
// if (toast == null) {
Toast toast = Toast.makeText(context, strId, duration);
// }else {
// toast.setText(strId);
// }
toast.setGravity(gravity, 0, 100);
toast.show();
}/**
- 一般Toast
*/
public static void show(Context context, String msg) {
showToast(context, msg, Toast.LENGTH_SHORT, Gravity.BOTTOM);
}
/**
- 一般Toast
*/
public static void show(Context context, int strId) {
showToast(context, strId, Toast.LENGTH_SHORT, Gravity.BOTTOM);
}
/**
- 居中Toast
*/
public static void showCenter(Context context, String msg) {
showToast(context, msg, Toast.LENGTH_SHORT, Gravity.CENTER);
}
/**
- 居中Toast
*/
public static void showCenter(Context context, int strId) {
showToast(context, strId, Toast.LENGTH_SHORT, Gravity.CENTER);
}
/**
- 顶部Toast
*/
public static void showTop(Context context, String msg) {
showToast(context, msg, Toast.LENGTH_SHORT, Gravity.TOP);
}
/**
- 顶部Toast
*/
public static void showTop(Context context, int strId) {
showToast(context, strId, Toast.LENGTH_SHORT, Gravity.TOP);
}
/**
- 长时间Toast
*/
public static void showLong(Context context, String msg) {
showToast(context, msg, Toast.LENGTH_LONG, Gravity.BOTTOM);
}
/**
- 长时间Toast
*/
public static void showLong(Context context, int strId) {
showToast(context, strId, Toast.LENGTH_LONG, Gravity.BOTTOM);
}
/**
- 长时间居中Toast
*/
public static void showLCenter(Context context, String msg) {
showToast(context, msg, Toast.LENGTH_LONG, Gravity.CENTER);
}
/**
- 长时间居中Toast
*/
public static void showLCenter(Context context, int strId) {
showToast(context, strId, Toast.LENGTH_LONG, Gravity.CENTER);
}
/**
- 长时间顶部Toast
*/
public static void showLTop(Context context, String msg) {
showToast(context, msg, Toast.LENGTH_LONG, Gravity.TOP);
}
/**
- 长时间顶部Toast
*/
public static void showLTop(Context context, int strId) {
showToast(context, strId, Toast.LENGTH_LONG, Gravity.TOP);
}
}