Android Dialog 7个使用举例(转)
在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它Android Dialog对话框,在我们使用Android的过程中,我归纳了一下,Android Dialog的类型无非也就7种,下面我分别向大家介绍这7种Android Dialog对话框的使用方法,希望对大家能有所帮助。
1、该效果是当按返回按钮时弹出一个提示,来确保无误操作,采用常见的对话框样式。
创建dialog对话框方法代码如下:
1 protected void dialog() { 2 AlertDialog.Builder builder = new Builder(Main.this); 3 builder.setMessage("确认退出吗?"); 4 builder.setTitle("提示"); 5 builder.setPositiveButton("确认", new OnClickListener() { 6 @Override 7 public void onClick(DialogInterface dialog, int which) { 8 dialog.dismiss(); 9 Main.this.finish(); 10 } 11 }); 12 builder.setNegativeButton("取消", new OnClickListener() { 13 @Override 14 public void onClick(DialogInterface dialog, int which) { 15 dialog.dismiss(); 16 } 17 }); 18 builder.create().show(); 19 }
在onKeyDown(int keyCode, KeyEvent event)方法中调用此方法
1 public boolean onKeyDown(int keyCode, KeyEvent event) { 2 if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { 3 dialog(); 4 } 5 return false; 6 }
2、改变了对话框的图表,添加了三个按钮
创建dialog的方法代码如下:
1 Dialog dialog = new AlertDialog.Builder(this) 2 .setIcon(android.R.drawable.btn_star) 3 .setTitle("喜好调查") 4 .setMessage("你喜欢李连杰的电影吗?") 5 .setPositiveButton("很喜欢", new OnClickListener() { 6 @Override 7 public void onClick(DialogInterface dialog, int which) { 8 // TODO Auto-generated method stub 9 Toast.makeText(Main.this, "我很喜欢他的电影。", 10 Toast.LENGTH_LONG).show(); 11 } 12 }) 13 .setNegativeButton("不喜欢", new OnClickListener() { 14 @Override 15 public void onClick(DialogInterface dialog, int which) { 16 // TODO Auto-generated method stub 17 Toast.makeText(Main.this, "我不喜欢他的电影。", Toast.LENGTH_LONG) 18 .show(); 19 } 20 }) 21 .setNeutralButton("一般", new OnClickListener() { 22 @Override 23 public void onClick(DialogInterface dialog, int which) { 24 // TODO Auto-generated method stub 25 Toast.makeText(Main.this, "谈不上喜欢不喜欢。", Toast.LENGTH_LONG) 26 .show(); 27 } 28 }) 29 .create(); 30 dialog.show();
3、信息内容是一个简单的View类型
创建dialog方法的代码如下:
1 new AlertDialog.Builder(this) 2 .setTitle("请输入") 3 .setIcon(android.R.drawable.ic_dialog_info) 4 .setView(new EditText(this)) 5 .setPositiveButton("确定", null) 6 .setNegativeButton("取消", null) 7 .show();
4、信息内容是一组单选框
创建dialog方法的代码如下:
1 new AlertDialog.Builder(this) 2 .setTitle("复选框") 3 .setMultiChoiceItems(new String[] { "Item1", "Item2" }, null, null) 4 .setPositiveButton("确定", null) 5 .setNegativeButton("取消", null) 6 .show();
5、信息内容是一组多选框
创建dialog方法的代码如下:
1 new AlertDialog.Builder(this) 2 .setTitle("单选框") 3 .setIcon(android.R.drawable.ic_dialog_info) 4 .setSingleChoiceItems(new String[] { "Item1", "Item2" }, 0, new DialogInterface.OnClickListener() { 5 public void onClick(DialogInterface dialog, int which) { 6 dialog.dismiss(); 7 } 8 }) 9 .setNegativeButton("取消", null) 10 .show();
6、信息内容是一组简单列表项
创建dialog的方法代码如下:
1 new AlertDialog.Builder(this) 2 .setTitle("列表框") 3 .setItems(new String[] { "Item1", "Item2" }, null) 4 .setNegativeButton("确定", null) 5 .show();
7、信息内容是一个自定义的布局
dialog布局文件代码如下:
1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:layout_height="wrap_content" 4 android:layout_width="wrap_content" 5 android:background="#ffffffff" 6 android:orientation="horizontal" 7 android:id="@+id/dialog"> 8 <TextView android:layout_height="wrap_content" 9 android:layout_width="wrap_content" 10 android:id="@+id/tvname" 11 android:text="姓名:" /> 12 <EditText android:layout_height="wrap_content" 13 android:layout_width="wrap_content" 14 android:id="@+id/etname" 15 android:minWidth="100dip"/> 16 </LinearLayout>
创建dialog方法的代码如下:
1 LayoutInflater inflater = getLayoutInflater(); 2 View layout = inflater.inflate(R.layout.dialog, (ViewGroup) findViewById(R.id.dialog)); 3 new AlertDialog.Builder(this) 4 .setTitle("自定义布局") 5 .setView(layout) 6 .setPositiveButton("确定", null) 7 .setNegativeButton("取消", null) 8 .show();
好了,以上7种Android dialog对话框的使用方法就介绍到这里了,基本都全了,如果大家在android开发过程中遇到dialog的时候就可以拿出来看看。
正在学习Android Developing