第一步:
由于android提供了Application类,当程序启动时,系统自动进入到这个类进行初始化,故在些进行全局变量的管理;新建一个类,MyApplication,代码如下:
class MyApplication : Application(){
companion object{
lateinit var context: Context
}
override fun onCreate() {
super.onCreate()
context = applicationContext
}
第二步:
在AndroidManifaest.xml中添加一个属性
android: name = ".MyApplication"
第三步:
在Toast.kt文件中,修改代码如下:
fun String.showToast(duration: Int = Toast.LENGTH_SHORT){
Toast.makeText(MyApplication.context, this, duration).show();
}
fun Int.showToast(duration: Int = Toast.LENGTH_SHORT){
Toast.makeText(MyApplication.context, this.toString(), duration).show();
}
总结:进一步的简化了Toast的操作,解决了每次传context参数的麻烦。