android Toast 长期显示解决方案
来源:互联网 发布:mp3格式转换器mac版 编辑:程序博客网 时间:2024/04/30 07:20
自己写了一个简化类,把Toast封装在里面,可以满足基本应用。
public class MyToast {
private static final String TAG = "MyToast";
public static final int LENGTH_MAX = -1; //show until hide() function invoked
boolean mCanceled = true;
Handler mHandler;
Context mContext;
Toast mToast;
public MyToast(Context context) {
this(context,new Handler());
}
public MyToast(Context context,Handler h) {
mContext = context;
mHandler = h;
mToast = Toast.makeText(mContext,"",Toast.LENGTH_SHORT);
mToast.setGravity(Gravity.BOTTOM, 0, 0);
}
public void show(int resId,int duration) {
mToast.setText(resId);
if(duration != LENGTH_MAX) {
mToast.setDuration(duration);
mToast.show();
} else if(mCanceled) {
mToast.setDuration(Toast.LENGTH_LONG);
mCanceled = false;
showUntilCancel();
}
}
public void show(String text,int duration) {
mToast.setText(text);
if(duration != LENGTH_MAX) {
mToast.setDuration(duration);
mToast.show();
} else {
if(mCanceled) {
mToast.setDuration(Toast.LENGTH_LONG);
mCanceled = false;
showUntilCancel();
}
}
}
public void hide() {
Log.d(TAG,"hide");
mToast.cancel();
mCanceled = true;
}
public boolean isShowing() {
return !mCanceled;
}
private void showUntilCancel() {
if(mCanceled)
return;
mToast.show();
mHandler.postDelayed(new Runnable() {
public void run() {
showUntilCancel();
}
},3000);
}
}
- android Toast 长期显示解决方案
- Android中Toast不显示的解决方案
- [Android] 多次按钮点击Toast重复显示解决方案
- Android 程序退出 Toast还一直显示 解决方案
- Toast 重复显示完善解决方案
- Android Toast显示动画
- Android Toast显示动画
- Toast自定义显示时长的解决方案
- 【Android】当关闭通知消息权限后无法显示系统Toast的解决方案
- 【Android】当关闭通知消息权限后无法显示系统Toast的解决方案
- 【Android】当关闭通知权限后无法显示Toast的解决方案V2.0
- 【Android】当关闭通知权限后无法显示Toast的解决方案V2.0
- android Toast 各种显示方式
- android Toast 自定义消息显示
- android 自定义Toast显示风格
- Android Toast 重复显示问题
- Android 即时显示信息Toast
- Android消除Toast延迟显示
- 分页加union all
- 临时表
- Android的调试原理--学习笔记
- Using TXMLDocument(from BCB HELP)
- Excel 宏编程的常用代码
- android Toast 长期显示解决方案
- Qt中将QTableView中的数据导出为Excel文件
- Nsploit - Popping boxes with Nmap
- 伟大的汉族
- vim plugins
- 关于 Application.DoEvents()
- linux 2.6内核编程-ioctl使用实例
- 超强1000个jquery极品插件!
- .vimrc