您的位置:首页 > 移动开发 > Android开发

7种形式的Android Dialog使用举例

2015-08-14 13:04 471 查看
在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它AndroidDialog对话框,在我们使用Android的过程中,我归纳了一下,AndroidDialog的类型无非也就7种,下面我分别向大家介绍这7种AndroidDialog对话框的使用方法,希望对大家能有所帮助。

1.该效果是当按返回按钮时弹出一个提示,来确保无误操作,采用常见的对话框样式。



创建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.改变了对话框的图表,添加了三个按钮



创建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.信息内容是一个简单的View类型



创建dialog方法的代码如下:

newAlertDialog.Builder(this).setTitle("请输入").setIcon(
  android.R.drawable.ic_dialog_info).setView(
  newEditText(this)).setPositiveButton("确定",null)
  .setNegativeButton("取消",null).show();


4.信息内容是一组单选框



创建dialog方法的代码如下:

newAlertDialog.Builder(this).setTitle("复选框").setMultiChoiceItems(
  newString[]{"Item1","Item2"},null,null)
  .setPositiveButton("确定",null)
  .setNegativeButton("取消",null).show();


5.信息内容是一组多选框



创建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.信息内容是一组简单列表项



创建dialog的方法代码如下:

newAlertDialog.Builder(this).setTitle("列表框").setItems(
  newString[]{"Item1","Item2"},null).setNegativeButton(
  "确定",null).show();


7.信息内容是一个自定义的布局



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的时候就可以拿出来看看。

转自:http://www.oschina.net/question/54100_32486



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: