一个展示标准 Toast 的库
如果项目中只使用了标准的 Toast,那么 ToastUtil 是一个不错的选择。
功能简介
ToastUtil 基于系统 Toast :
public static Toast makeText (Context context, CharSequence text, int duration)
public void setText (CharSequence s)
两个方法,提供了以下功能:
- 可替换模式
- 子线程调用
模式介绍
ToastUtil 有两种模式:
- ToastUtil.Mode.NORMAL //普通模式
-
ToastUtil.Mode.REPLACEABLE //可替换模式
两种模式区别
初始化
在 Application 中初始化:
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
ToastUtil.initialize(this);
}
}
在初始化时也可以设置默认的模式,默认为 NORMAL 模式:
// 以 replaceable 模式初始化
ToastUtil.initialize(this, ToastUtil.Mode.REPLACEABLE);
不要忘记将 Application 注册到 AndroidManifest 中:
<application
android:name="yourPackageName.MyApplication"
...
</application>
当然也可以选择在 Activity 或使用之前进行初始化,但后者在使用时总要想着是否初始化过,所以建议在程序入口处进行初始化。
show
show 方法有很多重载,这里只介绍参数最少和最多的两种:
- 以默认模式显示较短时间 Toast
ToastUtil.show(R.string.toast_util);
ToastUtil.show("ToastUtil");
- 以可替换模式显示较长时间 Toast
ToastUtil.show(R.string.toast_util, true, ToastUtil.Mode.REPLACEABLE);
ToastUtil.show("ToastUtil", true, ToastUtil.Mode.REPLACEABLE);
每个 show 方法都有对应的 postShow 方法以供在子线程调用。
Github 中提供了例子进行展示:
![](https://img.haomeiwen.com/i1978808/ad12227f995f5885.gif)
下载
可以访问 Github Relsease 页面下载最新版本.
或使用Gradle:compile 'tech.gujin:toast-util:1.1.1'
最后
代码已托管至Github:GuJin/ToastUtil,欢迎star.
全部方法请参看文档:javadoc.
非常感谢。
网友评论
顺便有个小问题啊,模式可以动态切换吗,是否show函数重载几个可以切换模式的
😀😀😀
ToastUtil.show("ToastUtil", ToastUtil.Mode.REPLACEABLE);
像这样传参进去就行了