一款精美的Toast第三方库的简单使用

  • 以前一直用的安卓原生Toast,个人感觉Toast这东西,没必要花功夫,知道看到了Toasty这东西,立刻被圈粉了,真的非常好看。
  • 项目地址

我们都知道,安卓原生Toast的用法是

1 Toast.makeText(MainActivity.this,"Toast显示内容",Toast.LENGTH_SHORT).show();

方法内由Context、内容、持续时间(LENGTH_SHORT为短时间,2秒。LENGTH_LONG为长时间,3.5秒。也可以用毫秒数代替)构成。而Toasty的实际使用,也跟原生的使用方法基本一致,这就非常舒服了。

 

首先,我们需要在工程根目录的build.gradle添加仓库

1 allprojects {
2     repositories {
3         ...
4         maven { url "https://jitpack.io" }
5     }
6 }

 

然后,在app目录下的build.gradle添加依赖

1 dependencies {
2     ...
3     //截止到写这篇博客时最新版为1.4.2
4     implementation 'com.github.GrenderG:Toasty:1.4.2'
5 }

 

完成了以上的准备工作,现在就可以使用了

 

错误Toast

1 Toasty.error(MainActivity.this, "This is an error toast.", Toast.LENGTH_SHORT, true).show();

 

成功Toast

1 Toasty.success(MainActivity.this, "This is a success toast.", Toast.LENGTH_SHORT, true).show();

 

提示Toast

1 Toasty.info(MainActivity.this, "This is an info toast.", Toast.LENGTH_SHORT, true).show();

 

警告Toast

1 Toasty.warning(MainActivity.this, "This is a warning toast.", Toast.LENGTH_SHORT, true).show();

 

原生Toast

当然,也有修改后的原生Toast,满足你的不同需求

1 Toasty.normal(MainActivity.this, "Normal toast.").show();

 

带图片的原生Toast

1 Toasty.normal(MainActivity.this, "Normal toast.", IconDrawable).show();
2 //IconDrawable是你需要放入的图片,可以用getDrawable实现。以软件图标当Toast图片为例,则用法为:
3 Toasty.normal(MainActivity.this, "Normal toast.", getDrawable(R.drawable.ic_launcher)).show();

 

自定义Toast

当然肯定少不了自定义Toast

1 //官方的介绍是:
2 Toasty.custom(yourContext, "I'm a custom Toast", yourIconDrawable, tintColor, duration, withIcon, shouldTint).show();

但在实际使用时,则需要自己补全步骤

图片仍然用getDrawable,而颜色可以直接使用安卓定义的Color.BLUE、Color.RED等分别设置背景颜色和文本颜色,用法如下:

1 Toasty.custom(MainActivity.this, "I'm a custom Toast", getDrawable(R.drawable.ic_launcher),Color.BLUE,Color.RED, Toast.LENGTH_SHORT, true,true).show();

然而,实际中更需要的当然是自定义颜色。这可以用类似的getColor实现:

1.在/res/valus目录下的colors.xml中设置颜色值

1 
2     #BBDEFB
3     #ffffff
4 

 2.使用getColor引用color1和color2

1 Toasty.custom(MainActivity.this, "I'm a custom Toast", getDrawable(R.drawable.ic_launcher),getColor(R.color.color1),getColor(R.color.color2), Toast.LENGTH_SHORT, true,true).show();

 

统一配置

Toasty支持统一配置内容,但是我目前并没有去研究,感兴趣的人可以去原项目中查看readme和源码来学习使用。

 

效果展示

 

相关资源

下载演示demo

下载源码

你可能感兴趣的:(一款精美的Toast第三方库的简单使用)