一款精美的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.",getResources().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", getResources().getDrawable(R.drawable.ic_launcher),Color.BLUE,Color.RED, Toast.LENGTH_SHORT, true,true).show();

然而,實際中更需要的當然是自定義顏色。這可以用類似的getColor實現:

1.在/res/valus目錄下的colors.xml中設置顏色值

1 <resources>
2     <color name="color1">#BBDEFB</color>
3     <color name="color2">#ffffff</color>
4 </resources>

 2.使用getColor引用color1和color2

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

 

統一配置

Toasty支持統一配置內容,可以搭配封裝來用本身這個庫的使用就非常簡單,但是實際使用需要那么長一條還是比較麻煩。所以封裝這個不必要,但可以搞一搞,使用時也就不用一個參數一個參數寫進去了,而這個的封裝也比較簡單。

 

封裝

封裝在這篇文章

 

效果展示

 

相關資源

下載演示demo

下載源碼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM