在实际开发中Toast使用频率非常高,但是,自定义Toast个人感觉使用不是很高,下面我们来看一Toast是如何实现View 的,我们如果自定义Toast。
Toast 源码
我们这里不进行Toast的全部源码分析,只对我们自定义会用到的部分源码进行分析。
变量
- View mNextView
这个变量是显示的View - int mDuration
这个变量是显示时间
方法
下面我们来看一下,我们常用的方法makeText():
public static Toast makeText(Context context, CharSequence text, @Duration int duration) {
Toast result = new Toast(context);
LayoutInflater inflate = (LayoutInflater)
context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflate.inflate(com.android.internal.R.layout.transient_notification, null);