1、普通对话框:

给出提示信息,有yes、no两个按钮。

 AlertDialog dialog=new AlertDialog.Builder(this)  //this代表当前Activity对象,表示此对话框属于当前Activity对象。也可用  类名.this  指定为其它的Activity对象
.setPositiveButton("确定",null) //要加的按钮必须放在create()之前
.setNegativeButton("取消",null) //第一个参数是按钮上的文本,第二个是监听器OnClickListener,可设置为null,点击时退出对话框
.setTitle("提示") //标题
.setMessage("是否退出?") //提示信息
.setIcon(R.drawable.a) //图标,只能是R.xxx.yyy的形式
.create(); //不用create(),直接show()也行 //标题、提示信息、图标也可以后面再设置
//dialog.setTitle("提示");
//dialog.setMessage("是否退出");
//dialog.setIcon(R.drawable.a); dialog.show(); //显示对话框
//dialog.hide(); //隐藏对话框

所有对话框都有   setTitle()、setMessage()、setIcon()、show()、hide()的方法。

其中 setTitle()、setMessage()、setIcon()既可以在create()之前使用,也可以在create()创建对话框后再使用。

2、单选对话框

 AlertDialog dialog=new AlertDialog.Builder(this)
.setTitle("请选择性别")
.setIcon(R.drawable.a)
////设置一组单选按钮,第一个参数是String数组,第二参数设置默认选中的项(数组下标),第三个参数单选按钮的监听器
.setSingleChoiceItems(new String[]{"男","女"},0,null)
.show(); //不用create(),直接show()也行

3、多选对话框

 AlertDialog dialog=new AlertDialog.Builder(this)
.setTitle("请选择爱好")
.setIcon(R.drawable.a) //设置一组多选按钮,第一个参数是String数组,第二参数boolean数组,true表示该项默认选中,第三个参数是监听器
.setMultiChoiceItems(new String[]{"读书","运动","旅游"},new boolean[]{true,true,false},null)
.show();

以上三种对话框中用到的事件监听:

 new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//i代表当前按钮的编号
}
}

普通对话框中,这个事件监听是某个按钮的事件监听。

单选/多线对话框中,这个事件监听是每个选项的事件监听,即点击一个选项,就会触发事件一次。

普通对话框、单选对话框、多选对话框都是AlertDialog。进度条对话框是ProgressDialog。

4、进度条对话框

当程序在进行耗时的操作时(比如下载文件),可以用进度条对话框来显示进度。

进度条有2种样式:

                         

     水平进度条                                                圆形进度条(圆圈会一直转动)

 ProgressDialog dialog=new ProgressDialog(this);   //注意用法有点不同,没有Builder()
dialog.setTitle("下载进度"); //注意ProgressDialog的方法都只能单独写,不能在创建ProgressDialog对象时写在后面
dialog.setIcon(R.drawable.a);
dialog.setMessage("正在下载请稍后"); //文本可用setMessage()动态修改,显示当前的具体操作
dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); //设置进度条样式
dialog.show();

5、消息对话框

消息对话框(Toast)是轻量级消息提醒机制,用于向用户显示即时消息。

Toast对话框显示在程序界面的最上层(最前面),显示一段时间后自动消失,不会打断当前操作,也不会获取焦点,只起到提示作用。

 //makeText()是Toast类的静态方法。
//第一个参数指定消息对话框所属的Activity,可用Activity类名.this指定其他的,第二个参数指定提示文本,第三个参数是Toast类的预定义常量,指定显示时间的长短。
//要调用show()才会显示。
Toast.makeText(this,"电量不足10%!",Toast.LENGTH_LONG).show();

Android提供的对话框的更多相关文章

  1. android 8种对话框(Dialog)使用方法汇总

    1.写在前面 Android提供了丰富的Dialog函数,本文介绍最常用的8种对话框的使用方法,包括普通(包含提示消息和按钮).列表.单选.多选.等待.进度条.编辑.自定义等多种形式,将在第2部分介绍 ...

  2. 常用的android弹出对话框

    我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其他平台开发经验的朋友都会知道,大部分的平台都只提供了几个最简单的实现,如果我们想实现自己特定需求的对话框,大家可能首先会想到,通过继承等 ...

  3. Android详细的对话框AlertDialog.Builder使用方法

      我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其他平台开发经验的朋友都会知道,大部分的平台都只提供了几个最简单的实现,如果我们想实现自己特定需求的对话框,大家可能首先会想到,通过继 ...

  4. 经常使用的android弹出对话框

    我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其它平台开发经验的朋友都会知道,大部分的平台都仅仅提供了几个最简单的实现,假设我们想实现自己特定需求的对话框,大家可能首先会想到,通过继承 ...

  5. Android 自学之对话框

    Android为我们提供了丰富的对话框支持,提供了四种常用的对话框: AlertDialog:功能丰富.实际应用最广泛的对话框. ProgressDialog:进度对话框,该对话框只用于简单的进度条封 ...

  6. android弹出对话框

    我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其他平台开发经验的朋友都会知道,大部分的平台都只提供了几个最简单的实现,如果我们想实现自己特定需求的对话框,大家可能首先会想到,通过继承等 ...

  7. 【Android】Android 8种对话框(Dialog)

    1.写在前面 Android提供了丰富的Dialog函数,本文介绍最常用的8种对话框的使用方法,包括普通(包含提示消息和按钮).列表.单选.多选.等待.进度条.编辑.自定义等多种形式,将在第2部分介绍 ...

  8. Android开发 DialogFragment对话框详解

    前言 在聊DialogFragment之前,我们看看以往我们在Android里实现一个对话框一般有这几种方式: Dialog 继承重写Dialog实现一个自定义的Dialog AlertDialog ...

  9. Android之Builder对话框的一些常用方式

    原文: http://blog.csdn.net/kkfdsa132/article/details/6322835 Android为我们提供几种对话框,主要有:AlertDialog.Progres ...

随机推荐

  1. IE6span 高度问题

    IE6盒子的最小高度为20px,所以设置低于20px大小时,加上_overflow:hidden;

  2. Linux 下WAS的java版本查看

    1.查找linux的详细版本号: A.cat /proc/version B.lsb_release -a(可以查出是否为redhat开发的) C.uname -a 2.Linux的java版本 A. ...

  3. [原创]java获取word文档的条目化内容

    在开发Web办公系统或文档系统时,PageOffice组件是众所周知的在线处理微软word/ppt/excel文档的强大工具,它对WORD文档的各种处理在API层面进行了封装,屏蔽了Office VB ...

  4. [原创]java合并word文件

    需求背景 在互联网教育行业,做内容相关的项目经常碰到的一个问题就是如何动态生成一张word试卷.事先把题库中的每一道试题都已经保存成一个独立的word文件了,但是在选择了部分试题生成一张word试卷的 ...

  5. 小程序不支持wx.request同步请求解决方法

    小程序为了用户体验,所有的request均为异步请求,不会阻塞程序运行 百牛信息技术bainiu.ltd整理发布于博客园 所以当你需要同步请求,锁死操作时,最好将所有的逻辑写在success:func ...

  6. cmake官方文档

    https://cmake.org/cmake/help/v3.0/genindex.html

  7. 【转】IntelliJ IDEA搭建Spring环境

    //本来在草稿箱写好了,忘记发就被冲掉了,重新再写一遍. Spring初探 Spring初探 在IntelliJ IDEA中创建Spring项目 一个简单的例子介绍框架的作用 那么什么时候new的对象 ...

  8. Synchronized之三:Synchronized与线程中断、线程wait

    线程中断 见<Thread之八:interrupt中断> 正如中断二字所表达的意义,在线程运行(run方法)中间打断它,在Java中,提供了以下3个有关线程中断的方法 //中断线程(实例方 ...

  9. java try·····catch·····异常处理学习

    异常处理(又称为错误处理)功能 用于处理软件或信息系统中出现的异常状况(即超出程序正常执行流程的某些特殊条件). try....catch....只是异常处理的一种常用方法 try{ //可能导致异常 ...

  10. B - Preparing Olympiad

    Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Description You ha ...