在android开发中,我们经常会需要在android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它android dialog对话框,在我们使用android的过程中,我归纳了一下,android dialog的类型无非也就7种,下面我分别向大家介绍这7种android dialog对话框的使用方法,希望对大家能有所帮助。
1.该效果是当按返回按钮时弹出一个提示,来确保无误操作,采用常见的对话框样式。
创建dialog对话框方法代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
protected void dialog() {
alertdialog.builder builder = new builder(main. this );
builder.setmessage( "确认退出吗?" );
builder.settitle( "提示" );
builder.setpositivebutton( "确认" , new onclicklistener() {
@override
public void onclick(dialoginterface dialog, int which) {
dialog.dismiss();
main. this .finish();
}
});
builder.setnegativebutton( "取消" , new onclicklistener() {
@override
public void onclick(dialoginterface dialog, int which) {
dialog.dismiss();
}
});
builder.create().show();
}
|
在onkeydown(int keycode, keyevent event)方法中调用此方法
1
2
3
4
5
6
|
public boolean onkeydown( int keycode, keyevent event) {
if (keycode == keyevent.keycode_back && event.getrepeatcount() == 0 ) {
dialog();
}
return false ;
}
|
2.改变了对话框的图表,添加了三个按钮
创建dialog的方法代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
dialog dialog = new alertdialog.builder( this ).seticon(
android.r.drawable.btn_star).settitle( "喜好调查" ).setmessage(
"你喜欢李连杰的电影吗?" ).setpositivebutton( "很喜欢" ,
new onclicklistener() {
@override
public void onclick(dialoginterface dialog, int which) {
// todo auto-generated method stub
toast.maketext(main. this , "我很喜欢他的电影。" ,
toast.length_long).show();
}
}).setnegativebutton( "不喜欢" , new onclicklistener() {
@override
public void onclick(dialoginterface dialog, int which) {
// todo auto-generated method stub
toast.maketext(main. this , "我不喜欢他的电影。" , toast.length_long)
.show();
}
}).setneutralbutton( "一般" , new onclicklistener() {
@override
public void onclick(dialoginterface dialog, int which) {
// todo auto-generated method stub
toast.maketext(main. this , "谈不上喜欢不喜欢。" , toast.length_long)
.show();
}
}).create();
dialog.show();
|
3.信息内容是一个简单的view类型
创建dialog方法的代码如下:
1
2
3
4
|
new alertdialog.builder( this ).settitle( "请输入" ).seticon(
android.r.drawable.ic_dialog_info).setview(
new edittext( this )).setpositivebutton( "确定" , null )
.setnegativebutton( "取消" , null ).show();
|
4.信息内容是一组单选框
创建dialog方法的代码如下:
1
2
3
4
|
new alertdialog.builder( this ).settitle( "复选框" ).setmultichoiceitems(
new string[] { "item1" , "item2" }, null , null )
.setpositivebutton( "确定" , null )
.setnegativebutton( "取消" , null ).show();
|
5.信息内容是一组多选框
创建dialog方法的代码如下:
1
2
3
4
5
6
7
8
|
new alertdialog.builder( this ).settitle( "单选框" ).seticon(
android.r.drawable.ic_dialog_info).setsinglechoiceitems(
new string[] { "item1" , "item2" }, 0 ,
new dialoginterface.onclicklistener() {
public void onclick(dialoginterface dialog, int which) {
dialog.dismiss();
}
}).setnegativebutton( "取消" , null ).show();
|
6.信息内容是一组简单列表项
创建dialog的方法代码如下:
1
2
3
|
new alertdialog.builder( this ).settitle( "列表框" ).setitems(
new string[] { "item1" , "item2" }, null ).setnegativebutton(
"确定" , null ).show();
|
7.信息内容是一个自定义的布局
dialog布局文件代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
|
<?xml version= "1.0" encoding= "utf-8" ?>
<linearlayout xmlns:android= "http://schemas.android.com/apk/res/android"
android:layout_height= "wrap_content" android:layout_width= "wrap_content"
android:background= "#ffffffff" android:orientation= "horizontal"
android:id= "@+id/dialog" >
<textview android:layout_height= "wrap_content"
android:layout_width= "wrap_content"
android:id= "@+id/tvname" android:text= "姓名:" />
<edittext android:layout_height= "wrap_content"
android:layout_width= "wrap_content" android:id= "@+id/etname" android:minwidth= "100dip" />
</linearlayout>
|
创建dialog方法的代码如下:
1
2
3
4
5
6
|
layoutinflater inflater = getlayoutinflater();
view layout = inflater.inflate(r.layout.dialog,
(viewgroup) findviewbyid(r.id.dialog));
new alertdialog.builder( this ).settitle( "自定义布局" ).setview(layout)
.setpositivebutton( "确定" , null )
.setnegativebutton( "取消" , null ).show();
|
好了,以上7种android dialog对话框的使用方法就介绍到这里了,基本都全了,如果大家在android开发过程中遇到dialog的时候就可以拿出来看看。