自定义Toast和通过线程限制Toast显示
来源:互联网 发布:淘宝网店运营托管怎样 编辑:程序博客网 时间:2024/06/08 01:52
一 : 自定义Toast
public class ToastView { public static Toast toast; private int time; private Timer timer; public ToastView(Context context, String text) { LayoutInflater inflater = LayoutInflater.from(context); View view = inflater.inflate(R.layout.toast_view, null); TextView t = (TextView) view.findViewById(R.id.toast_text); t.setText(text); if(toast != null) { toast.cancel(); } toast = new Toast(context); toast.setDuration(Toast.LENGTH_SHORT); toast.setView(view); } public ToastView(Context context, int text) { LayoutInflater inflater = LayoutInflater.from(context); View view = inflater.inflate(R.layout.toast_view, null); TextView t = (TextView) view.findViewById(R.id.toast_text); t.setText(text); if(toast != null) { toast.cancel(); } toast = new Toast(context); toast.setDuration(Toast.LENGTH_SHORT); toast.setView(view); } //设置toast显示位置 public void setGravity(int gravity, int xOffset, int yOffset) { //toast.setGravity(Gravity.CENTER, 0, 0); //居中显示 toast.setGravity(gravity, xOffset, yOffset); } //设置toast显示时间 public void setDuration(int duration) { toast.setDuration(duration); } //设置toast显示时间(自定义时间) public void setLongTime(int duration) { //toast.setDuration(duration); time = duration; timer = new Timer(); timer.schedule(new TimerTask(){ @Override public void run() { if(time-1000 >= 0) { show(); time= time - 1000; } else { timer.cancel(); } } }, 0, 1000); } public void show() { toast.show(); } public static void cancel() { if(toast != null) { toast.cancel(); } }}
这样用的~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ToastView toast = new ToastView(getBLApplication(), "请确保上一个设备断开蓝牙连接");toast.setLongTime(30000);toast.setGravity(Gravity.CENTER, 0, 0);toast.show();
// 二 : 通过线程限制Toast显示(解决每点一下,就弹出一个Toast,点击次数过多的话....)
public static void toastMessage(final Context context, final String message, final int duration) { Handler handler = new Handler(context.getMainLooper()); handler.post(new Runnable() { @Override public void run() { Toast.makeText(context, message, duration).show(); } });}
0 0
- 自定义Toast和通过线程限制Toast显示
- 自定义Toast,防止层叠显示问题,和自定义Toast样式
- Android 自定义Toast,修改Toast样式和显示时长
- Android 自定义Toast,修改Toast样式和显示时长
- 自定义可以在子线程显示的Toast,并自定义显示时长和位置
- 自定义显示的Toast
- 自定义toast显示
- 自定义Toast显示效果
- 自定义Toast显示
- 自定义背景和显示时间的Toast
- Toast 的默认和自定义显示
- 自定义toast样式和指定显示位置
- Toast拓展--自定义显示时间和动画
- 自定义toast、toast重复显示、切换界面toast自动消失
- 自定义toast、toast重复显示、切换界面toast自动消失
- 自定义Notification和Toast
- Toast显示时间的自定义
- android Toast 自定义消息显示
- idea svn 切换分支
- 洲新城 IT教育 李赞红老师 第一章节
- 观察者
- Java多线程之wait(),notify(),notifyAll()
- vs快捷键
- 自定义Toast和通过线程限制Toast显示
- iOS开发中一些实用小代码(持续更新-2016年11月7日)
- DataBinding实现ListView
- 元素同排方式-css
- loadrnner 之http脚本开发
- Xcode8.1 bundle format unrecognized, invalid, or unsuitable
- Windows socket基础
- exploded war VS war
- FlexboxLayout