Android開發(fā)基礎簡化Toast調用方法詳解
前言
有時候我們開發(fā)時會發(fā)現(xiàn)有些方法調用非常多,但它的默認的調用方法卻要傳很多參數(shù)進去而且還得記得調用具體的寫法,比如Toast,不止要調用makeText()方法還得在makeText()方法后加上show():
Toast.makeText(context, "A", Toast.LENGTH_LONG).show()
有時候就會因為忘記調show()方法而不顯示,結果導致很多奇怪的Bug,所以對其的簡化還是很有必要的。
實現(xiàn)方法
那么我們怎么對Toast方法簡化呢?

新建一個Toast.kt文件

import android.content.Context
import android.widget.Toast
//工具方法
//添加擴展函數(shù)
//簡化Toast調用方法
fun String.showToast(context : Context) {
Toast.makeText(context, this, Toast.LENGTH_LONG).show()
}
fun Int.showToast(context : Context) {
Toast.makeText(context, this, Toast.LENGTH_LONG).show()
}
然后去除默認加上的class類,并為String和Int類各寫一個擴展方法,然后我們在擴展方法中調用Toast方法,將其中的第二個參數(shù)(彈出的內容)換成this參數(shù),就能更簡單的使用Toast方法了:

字符串調用
"start ActivityPlayVideo".showToast(applicationContext)
定義在string.xml的字符串資源調用:
R.string.app_name.showToast(applicationContext)
但我們仍需要優(yōu)化該工具方法,因為此時我們是寫死了彈出時長的,不過Kotlin中有對函數(shù)設置參數(shù)默認值的功能:

fun String.showToast(context : Context, duration: Int = Toast.LENGTH_LONG) {
Toast.makeText(context, this, duration).show()
}
fun Int.showToast(context : Context, duration: Int = Toast.LENGTH_LONG) {
Toast.makeText(context, this, duration).show()
}
這樣寫好后,我們就在不需要設置彈出時間時不去輸入第二個參數(shù),默認時間,而在有彈出時長需求時改變第二個參數(shù)duration來設置時長:

//默認彈出時長 "start ActivityPlayVideo".showToast(applicationContext) //手動設置彈出時長 R.string.app_name.showToast(applicationContext, 500)
最終,我們就簡化好了Toast,后續(xù)在App中調用它也更加方便好用,當然,其實最好還加上對子線程的支持,因為子線程對UI不能直接操作。
總結
雖然方法很簡單,但在項目開發(fā)中的確蠻有作用的,簡化了編寫代碼的過程。
以上就是Android開發(fā)基礎簡化Toast調用方法的詳細內容,更多關于Android 簡化Toast調用的資料請關注腳本之家其它相關文章!
相關文章
ListView實現(xiàn)下拉動態(tài)渲染數(shù)據(jù)
這篇文章主要為大家詳細介紹了ListView實現(xiàn)下拉動態(tài)渲染數(shù)據(jù)的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06
Android Studio4.0解決Gradle下載超時問題
這篇文章主要介紹了Android Studio4.0解決Gradle下載超時問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-10-10
Android動畫之補間動畫(Tween Animation)基礎學習
補間動畫是指定開始和結束的圖像狀態(tài),自動生成需要顯示的過度圖像的動畫。補間動畫又分為四種:移動,縮放,旋轉,通明度等。下面就來給大家一篇關于Android中補間動畫的基礎知識,有需要的可以參考學習。2016-09-09
Android頂部(toolbar)搜索框實現(xiàn)的實例詳解
這篇文章主要介紹了Android頂部(toolbar)搜索框實現(xiàn)的實例詳解的相關資料,需要的朋友可以參考下2017-09-09

