android 7种对话框的使用
在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它AndroidDialog对话框,在我们使用Android的过程中,我归纳了一下,AndroidDialog的类型无非也就7种,下面我分别向大家介绍这7种AndroidDialog对话框的使用方法,希望对大家能有所帮助。
1.图链接http://s7.51cto.com/wyfs01/M01/2F/F3/wKioJlJI4NLivGhoAABHQcKFnzE744.jpg
该效果是当按返回按钮时弹出一个提示,来确保无误操作,采用常见的对话框样式。
创建dialog对话框方法代码如下:
protectedvoiddialog(){
AlertDialog.Builderbuilder=newBuilder(Main.this);
builder.setMessage("确认退出吗?");
builder.setTitle("提示");
builder.setPositiveButton("确认",newOnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
dialog.dismiss();
Main.this.finish();
}
});
builder.setNegativeButton("取消",newOnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
dialog.dismiss();
}
});
builder.create().show();
}
在onKeyDown(intkeyCode,KeyEventevent)方法中调用此方法
publicbooleanonKeyDown(intkeyCode,KeyEventevent){
if(keyCode==KeyEvent.KEYCODE_BACK&&event.getRepeatCount()==0){
dialog();
}
returnfalse;
}
2.图链接http://s8.51cto.com/wyfs01/M00/2F/F5/wKioOVJI4NLjdSkDAABMEtk3Xiw531.jpg
改变了对话框的图表,添加了三个按钮
创建dialog的方法代码如下:
Dialogdialog=newAlertDialog.Builder(this).setIcon(
android.R.drawable.btn_star).setTitle("喜好调查").setMessage(
"你喜欢李连杰的电影吗?").setPositiveButton("很喜欢",
newOnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//TODOAuto-generatedmethodstub
Toast.makeText(Main.this,"我很喜欢他的电影。",
Toast.LENGTH_LONG).show();
}
}).setNegativeButton("不喜欢",newOnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//TODOAuto-generatedmethodstub
Toast.makeText(Main.this,"我不喜欢他的电影。",Toast.LENGTH_LONG)
.show();
}
}).setNeutralButton("一般",newOnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//TODOAuto-generatedmethodstub
Toast.makeText(Main.this,"谈不上喜欢不喜欢。",Toast.LENGTH_LONG)
.show();
}
}).create();
dialog.show();
3.图链接http://s8.51cto.com/wyfs01/M00/2F/F5/wKioOVJI4NKQye7IAABLw_p5eIw935.jpg
信息内容是一个简单的View类型
创建dialog方法的代码如下:
newAlertDialog.Builder(this).setTitle("请输入").setIcon(
android.R.drawable.ic_dialog_info).setView(
newEditText(this)).setPositiveButton("确定",null)
.setNegativeButton("取消",null).show();
4.http://s3.51cto.com/wyfs01/M02/2F/F3/wKioJlJI4NLCGISjAABJlGxCi4U119.jpg
信息内容是一组单选框
创建dialog方法的代码如下:
newAlertDialog.Builder(this).setTitle("复选框").setMultiChoiceItems(
newString[]{"Item1","Item2"},null,null)
.setPositiveButton("确定",null)
.setNegativeButton("取消",null).show();
5.http://s3.51cto.com/wyfs01/M02/2F/F3/wKioJlJI4NLwla4yAABNh3CfsJE169.jpg
信息内容是一组多选框
创建dialog方法的代码如下:
newAlertDialog.Builder(this).setTitle("单选框").setIcon(
android.R.drawable.ic_dialog_info).setSingleChoiceItems(
newString[]{"Item1","Item2"},0,
newDialogInterface.OnClickListener(){
publicvoidonClick(DialogInterfacedialog,intwhich){
dialog.dismiss();
}
}).setNegativeButton("取消",null).show();
6.http://s5.51cto.com/wyfs01/M01/2F/F5/wKioOVJI4NPQT7jjAABJv4-sZ-g328.jpg
信息内容是一组简单列表项
创建dialog的方法代码如下:
newAlertDialog.Builder(this).setTitle("列表框").setItems(
newString[]{"Item1","Item2"},null).setNegativeButton(
"确定",null).show();
7.http://s7.51cto.com/wyfs01/M01/2F/F5/wKioOVJI4NPiFq0kAABWUgb9JOc883.jpg
信息内容是一个自定义的布局
dialog布局文件代码如下:
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns: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">
<TextViewandroid:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/tvname"android:text="姓名:"/>
<EditTextandroid:layout_height="wrap_content"
android:layout_width="wrap_content"android:id="@+id/etname"android:minwidth="100dip"/>
</LinearLayout>
创建dialog方法的代码如下:
LayoutInflaterinflater=getLayoutInflater();
Viewlayout=inflater.inflate(R.layout.dialog,
(ViewGroup)findViewById(R.id.dialog));
newAlertDialog.Builder(this).setTitle("自定义布局").setView(layout)
.setPositiveButton("确定",null)
.setNegativeButton("取消",null).show();
好了,以上7种Androiddialog对话框的使用方法就介绍到这里了,基本都全了,如果大家在android开发过程中遇到dialog的时候就可以拿出来看看。