Toast是Android特有的一种提醒机制,本人认为这是一种很优秀的设计。但是通常我们在使用的时候会对其稍微地进行定制。比如设置Toast的背景(默认是黑色,略透明的),让整个应用程序有同样风格的Toast,个人认为是一个不错的选择,而且这样调用Toast比Toast默认的使用方式略显简单,所以记录起来方便以后使用。
public class ToastUtil {
public static void show(Context context, String tip, boolean isLongTime) {
Toast toast = new Toast(context);
if (isLongTime) {
toast.setDuration(Toast.LENGTH_LONG);
} else {
toast.setDuration(Toast.LENGTH_SHORT);
}
toast.setGravity(Gravity.CENTER, 0, 100);// 设置Toast的位置
RelativeLayout rl = new RelativeLayout(context);
rl.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT));
TextView textView = new TextView(context);
textView.setTextColor(Color.WHITE);
textView.setTextSize(16);
textView.setText(tip);
textView.setBackgroundResource(R.drawable.bg_toast);// 自定义的图片
textView.setGravity(Gravity.CENTER);
rl.setPadding(40, 0, 40, 0);// 设置Toast距离屏幕左右两边的距离
rl.addView(textView);
toast.setView(rl);
toast.show();
}
public static void show(Context context, String tip) {
ToastUtil.show(context, tip, false);
}
}
效果如下: