- AlertDialog是Dialog的一个直接子类,AlertDialog也是Android系统当中最常用的对话框之一。 一个AlertDialog可以有两个以上的Button,可以对一个AlertDialog设置相应的信息。比如title,massage,setSingleChoiceItems,setPositiveButton,setNegativeButton等等。可以使用相应的接口 Builder产生出多种对话框。。
- 1.弹出一个简单的消息框
1
2
3
4
5
|
new
AlertDialog.Builder(MainActivity.this)
.setTitle(
"标题"
)
//设置标题
.setMessage(
"一个消息框"
)
//设置消息
.setPositiveButton(
"确定"
, null)
.show();
|
其中setPositiveButton()的第二个参数是设置监\听器来坚挺“确定”按钮的,这里设置为null表示没有设置监\听器。
- 2.弹出确定取消对话框
1
2
3
4
5
6
7
|
new
AlertDialog.Builder(MainActivity.this)
.setTitle(
"标题"
)
.setIcon(android.R.drawable.ic_dialog_alert))
//设置光标
.setMessage(
"确定吗?"
)
.setPositiveButton(
"确定"
, null)
.setNegativeButton(
"取消"
, null)
.show();
|
- 3.弹出输入框型对话框
1
2
3
4
5
6
7
|
new
AlertDialog.Builder(MainActivity.this)
.setTitle(
"请输入:"
)
.setIcon(android.R.drawable.ic_dialog_alert)
.setView(
new
EditText(MainActivity.this))
.setPositiveButton(
"确定"
, null)
.setNegativeButton(
"取消"
, null)
.show();
|
同样也可以用setview()方法新建别的视图。
- 4.设置带有图片的弹出框
1
2
3
4
5
6
7
8
9
|
ImageView imageview =
new
ImageView(MainActivity.this);
imageview.setImageResource(R.drawable.ic_launcher);
new
AlertDialog.Builder(MainActivity.this)
.setTitle(
"请输入:"
)
.setIcon(android.R.drawable.ic_dialog_alert)
.setView(imageview)
//设置图片
.setPositiveButton(
"确定"
, null)
.setNegativeButton(
"取消"
, null)
.show();
|
- 5.弹出列表框对话框
1
2
3
4
5
6
7
8
|
String[]
array
=
new
String[] {
"列表1"
,
"列表2"
,
"列表3"
};
new
AlertDialog.Builder(MainActivity.this)
.setTitle(
"列表框"
)
.setIcon(android.R.drawable.ic_dialog_alert)
.setItems(
array
, null)
.setPositiveButton(
"确定"
, null)
.setNegativeButton(
"取消"
, null)
.show();
|
setItems()的第二个参数是为列表框设置监/听器
- 6.弹出单选框对话框
1
2
3
4
5
6
7
8
|
String[]
array
=
new
String[] {
"item1"
,
"item2"
,
"item3"
,
"item4"
};
new
AlertDialog.Builder(MainActivity.this)
.setTitle(
"单选框"
)
.setIcon(android.R.drawable.ic_dialog_alert)
.setSingleChoiceItems(
array
, 0, null)
.setPositiveButton(
"确定"
, null)
.setNegativeButton(
"取消"
, null)
.show();
|
setSingleChoiceItems()的第二个参数为设置单选框初始选中项,第三个参数是为单选框设置监/听器.
- 7.弹出多选框对话框
1
2
3
4
5
6
7
8
9
|
String[]
array
=
new
String[] {
"item1"
,
"item2"
,
"item3"
,
"item4"
};
boolean[] selected =
new
boolean[] { true, false, true,false };
// 存放Boolean值的数组
new
AlertDialog.Builder(MainActivity.this)
.setTitle(
"多选框"
)
.setIcon(android.R.drawable.ic_dialog_alert)
.setMultiChoiceItems(
array
, selected, null)
.setPositiveButton(
"确定"
, null)
.setNegativeButton(
"取消"
, null)
.show();
|
setMultiChoiceItems()第二个参数为boolean型的数组,表示初始时被选中的项,若设为null,则都不选中。第三个参数为多选框设置监/听器.