欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android開發(fā)基礎簡化Toast調用方法詳解

 更新時間:2023年02月06日 08:57:09   作者:ObliviateOnline  
這篇文章主要為大家介紹了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調用的資料請關注腳本之家其它相關文章!

相關文章

  • Android實現(xiàn)單選按鈕

    Android實現(xiàn)單選按鈕

    這篇文章主要為大家詳細介紹了Android實現(xiàn)單選按鈕,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Android 中raw和assets文件夾的區(qū)別

    Android 中raw和assets文件夾的區(qū)別

    這篇文章主要介紹了Android 中raw和assets文件夾的區(qū)別的相關資料,需要的朋友可以參考下
    2017-04-04
  • Android 中SP與DP的區(qū)別實例詳解

    Android 中SP與DP的區(qū)別實例詳解

    這篇文章主要介紹了Android 中SP與DP的區(qū)別實例詳解的相關資料,需要的朋友可以參考下
    2016-10-10
  • Android實現(xiàn)百分比下載進度條效果

    Android實現(xiàn)百分比下載進度條效果

    這篇文章主要為大家詳細介紹了Android實現(xiàn)百分比下載進度條效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • Android開發(fā)使用Messenger及Handler進行通信的方法示例

    Android開發(fā)使用Messenger及Handler進行通信的方法示例

    這篇文章主要介紹了Android開發(fā)使用Messenger及Handler進行通信的方法,結合實例形式分析了Android使用Messenger及Handler定義客戶端與服務器端實現(xiàn)通信的相關操作技巧,需要的朋友可以參考下
    2017-12-12
  • 在Android Studio中設置Button透明度的方法詳解

    在Android Studio中設置Button透明度的方法詳解

    本文將介紹在Android Studio中如何設置Button的透明度,首先,我們將展示實現(xiàn)該功能的整個流程,并使用表格列出每個步驟,然后,我們將詳細說明每個步驟需要做什么,并提供相應的代碼和注釋,需要的朋友可以參考下
    2023-09-09
  • Android中CountDownTimer 實現(xiàn)倒計時功能

    Android中CountDownTimer 實現(xiàn)倒計時功能

    本篇文章主要介紹了Android中CountDownTimer 實現(xiàn)倒計時功能,CountDownTimer 是android 自帶的一個倒計時類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Android Canvas繪制文字橫縱向對齊

    Android Canvas繪制文字橫縱向對齊

    這篇文章主要介紹了Android Canvas繪制文字橫縱向對齊,Align屬性決定了使用該畫筆時,相較于繪制點的水平對稱方式,分別是LEFT、CENTER、RIGHT,更多相關內容需要的小伙伴可以參考下面文章詳細內容
    2022-06-06
  • Android ViewPager小圓點指示器

    Android ViewPager小圓點指示器

    這篇文章主要為大家詳細介紹了Android ViewPager小圓點指示器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • Flutter中抽屜組件Drawer使用詳解

    Flutter中抽屜組件Drawer使用詳解

    這篇文章主要為大家詳細介紹了Flutter中抽屜組件Drawer使用,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評論