Android Studio中的AlertDialog类是对话框类即android.app.Dialog类的子类,用来创建并显示对话框。通过AlertDialog类创建的对话框中,可以包含两个或者三个按键。
1 设置对话框
AlertDialog类的三个构造方法的访问权限都是protected,如图1所示。
图1 AlertDialog类的构造方法
因此,不能通过AlertDialog类的对象来操作对话框,只能用AlertDialog.builder类来操作对话框。
1.1 定义AlertDialog.builder类的对象
AlertDialog.builder类是定义在AlertDialog类内部的静态类。该类的构造方法的访问权限是public,如图2所示。
图2 AlertDialog.builder类的构造方法
从图2中可以看出,AlertDialog.builder类的参数是与builder和AlertDialog相关联的上下文类(Context)的对象。
定义AlertDialog.builder类对象的方法如图3所示。
图3 定义AlertDialog.builder类对象
从图3中可以看到,AlertDialog.builder类构造方法的参数this表示的是MainActivity,即与builder关联的上下文。因为要在响应方法中使用builder对象,因此要将其设置为final属性。
1.2 通过builder设置对话框
接下来通过builder来设置对话框。对于对话框的基本设置,包括设置对话框的标题和显示的内容。通过builder的setTitle()方法设置要显示的对话框的标题,如图4①所示;通过setMessage()方法设置对话框显示的内容,如图4②所示。
图4 通过builder设置对话框
2 显示对话框
通过builder的show()方法显示对话框,如图5所示。
图5 显示对话框
show()方法的作用是创建AlertDialog对话框,并且显示该对话框。显示的效果如图6所示。
图6 对话框效果