
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.10.2 实例工程:不同位置显示的提示信息
本实例演示了默认位置和自定义位置显示提示信息的效果(如图2-18所示)。单击“显示提示信息1”按钮会在默认位置显示提示信息,单击“显示提示信息2”按钮会在顶部显示提示信息。

图2-18 运行效果
1.新建工程
新建一个“Empty Activity”工程,工程名称为“C0209”。
2.主界面的布局

第06~15行添加两个Button控件,分别指定不同的id名称,用于单击后显示Toast提示信息。
3.主界面的Activity

第20行使用Toast类的makeText()静态方法直接调用show()方法显示提示信息,由于该语句在内联方法内,不能使用this获取Context对象,需要使用getApplicationContext()方法或MainActivity.this获取Context对象。第28~32行使用Toast类的makeText()静态方法为toast对象进行赋值,再通过3个方法分别对文本内容、持续时间和显示位置进行修改,最后使用show()方法显示提示信息。
提示:Context类
Context类是一个抽象类,有两个子类:ContextWrapper类和ContextImpl类。ContextWrapper类是上下文功能的封装类,而ContextImpl类是上下文功能的实现类。ContextWrapper类的子类包含ContextThemeWrapper类、Service类和Application类。其中,ContextThemeWrapper类是一个带主题的封装类,Activity类是它的子类。