Android为我们提供了多种对话框,其中AlertDialog功能最强大,最常用。此外,还有ProgressDialog、DatePickerDialog和TimePickerDialog。
AlertDialog.Builder类可以帮助我们方便的创建对话框。
具体步骤如下:
1.创建一个AlertDialog.Builder对象。
2.调用setTitle()、setCustomTitle()、setIcon()等方法设置对话框标题、图标、内容等。
3.调用AlertDialog.Builder类的create()方法创建AlertDialog对象,在调用AlertDialog的show()方法显示对话框。
其中设置对话框内容有以下这些方法:
setMessage():设置对话框内容为简单文本
setItems():设置对话框内容为简单列表项
setSingleChoiceItems():设置对话框内容为单选列表项
setMultiChoiceItems():设置对话框内容为多选列表框
setAdapter():设置对话框内容为自定义列表项
setView():设置对话框内容为自定义View
我们还可以用setPositiveButton()、setNeutralButton()和setNegativeButton()为对话框设置按钮。
如果我们在AndroidManifest.xml文件中为Activity设置属性
android:theme=”@android:style/Theme.Material.DIalog”
就可以创建对话框风格的窗口。
PopupWindow也可以用于创建对话框,具体步骤如下:
1.调用构造器创建PopuWindow对象。
2.显示方法有两个:
(1)showAsDropDown(View v)显示在v组件的下面。
(2)showAtLocation()显示在指定位置。
3.关闭dismiss()方法。
DatePickerDialog、TimePickerDialog可以创建带选择器的对话框,具体步骤如下:
1.用构造器创建对象
2.为对象绑定监听器
ProgressDialog可以创建带进度条的对话框,具体步骤如下:
1.用构造器创建ProgressDialog对象。
2.调用各种方法对其进行设置。
3.用show()方法显示出来。
可以用于设置的方法有以下这些:
setIndeterminate(boolean):设置对话框进度条是否显示进度值。
setMax(int):设置对话框进度条的最大值。
setMessage(CharSequence):设置对话框里显示的消息。
setProgress(int):设置对话框中进度条的进度值。
setProgressStyle(int):设置对话框进度条的风格。