1文本提示对话框

AlertDialog.Builder b = new AlertDialog.Builder(this);//this为上下文,如果在本类里显示,通常使用this
        b.setTitle("标题");/对话框标题
        b.setMessage("可能会删除某个文件");//提示文本
        b.setNegativeButton("取消",null); /*取消按钮,null为无点击事件,编写点击事件需要重写 DialogInterface.OnClickListener()的onClick方法*/

b.setPositiveButton("确定", null); //确定按钮,点击事件和取消按钮一样
        b.show();   设置完毕,显示对话框

效果图:

2单选对话框

 AlertDialog.Builder b = new AlertDialog.Builder(this);b.setTitle("单选对话框");
/*b.setSingleChoiceItems第一个参数为单选按钮组,第二个为默认选择第几个,第三个参数为监听事件*/b.setSingleChoiceItems(new String[]{"1", "2", "3", "4", "5", "6"}, 3, new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface x, int which) {//   which为当前选中的位置which+=1;Toast.makeText(MainActivity.this, "选择了第"+which+"个", Toast.LENGTH_SHORT).show();//打印}});b.setPositiveButton("确定", null);/*设置确定按钮,需要重写 DialogInterface.OnClickListener()的onClick方法这里我省略*/b.show();
}

效果图:

3复选对话框

AlertDialog.Builder b = new AlertDialog.Builder(this);
final String items[]=new String[]{"音乐", "画画", "游泳", "电影", "游戏", "运动"};
boolean[] checks=new boolean[]{false, false, false, false, false, false};
b.setTitle("选择你喜欢的项目:");
/*b.setMultiChoiceItems第一个参数为复选按钮组,第二个为是否默认选中,对应复选按钮组,true为默认选中,第三个为监听事件*/
b.setMultiChoiceItems(items, checks, new DialogInterface.OnMultiChoiceClickListener(){@Overridepublic void onClick(DialogInterface dialog, int which, boolean isChecked) {Toast.makeText(MainActivity.this, "你选择了"+items[which], Toast.LENGTH_SHORT).show();}
});
b.setPositiveButton("确定", null);
b.show();//显示对话框

效果如图:

4加载对话框

ProgressDialog pg = new ProgressDialog(MainActivity.this);
        pg.setTitle("加载.");
        pg.setMessage("请稍等...");
        pg.show();

5进度条对话框

ProgressDialog pg = new ProgressDialog(MainActivity.this);
        pg.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//声明对话框的样式,进度条
        pg.setMax(100);//设置进度条的最大值
        pg.setTitle("加载.");//设置标题
        pg.setMessage("请稍等...");//设置提示内容
        pg.show();//显示对话框
        pg.setProgress(60);//设置当前进度为60
      效果图:

最后我们来写一个动态的进度条对话框

public  void tips(View view) throws InterruptedException {final ProgressDialog pg = new ProgressDialog(MainActivity.this);pg.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);pg.setMax(100);pg.setTitle("加载.");pg.setMessage("请稍等...");pg.show();new Thread(){public  void  run(){for(int i=0;i<=100;i++){try {Thread.sleep(100);} catch (InterruptedException e) {e.printStackTrace();}pg.setProgress(i);}}}.start();}

效果图:

Android常用的几种对话框相关推荐

  1. Android常用的几种资源

    2019独角兽企业重金招聘Python工程师标准>>> Android常用的几种资源 一般资源都是放在res文件夹下的,res文件夹一般包含有values,drawable-ldpi ...

  2. Android常用的五种布局

    开发工具与关键技术:Android studio64, Android 1.FrameLayout(帧布局)是最简单的布局方式,放置的控件都只能罗列到左上角,控件会有重叠,不能进行复杂的布局. 2.L ...

  3. 安卓项目实战之:Android常用的5种加密方式

    前言 按加密结果是否可以被解密分为可逆和不可逆: 1,不可逆: MD5(Message-Digest消息摘要):不可逆,长度固定(32位),容易计算,仅一字节只差加密结果都会有很大区别 通常情况下为了 ...

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

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

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

    本文为作者原创,转载请注明出处:http://www.cnblogs.com/gzdaijie/p/5222191.html 目录 1.写在前面 2.代码示例 2.1 普通Dialog(图1与图2) ...

  6. 【REACT NATIVE 系列教程之十三】利用LISTVIEW与TEXTINPUT制作聊天/对话框获取组件实例常用的两种方式...

    本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/react-native/2346.html ...

  7. android自定义dialog开源库,android-dialog: 此框架提供五种对话框的显示,并支持对话框的扩展,目的是为了提供对话框的统一管理,并提供对话框显示的公共接口。...

    android-dialog 此框架提供七种对话框的显示,并支持对话框的扩展,目的是为了提供对话框的统一管理,并提供对话框显示的公共接口. LoadingDialog:正在加载对话框 MessageD ...

  8. QT入门基础认知(三个常用类、三种对话框类型、信号和槽)

    1.简单介绍: 1.1 三个常用类(Qwidget类.QDialog类.QMainwindow类) Qwidget类:继承与QObject类和QPaintdevice类,所有用户界面对象的基类,常用于 ...

  9. android常用两种适配器,Android常见设计模式五:适配器模式

    对于开发人员来说,设计模式有时候就是一道坎,但是设计模式又非常有用,过了这道坎,它可以让你水平提高一个档次.而在android开发中,必要的了解一些设计模式又是必须的,因为设计模式在Android源码 ...

  10. Android底部导航栏最常用的两种写法

    先来看看底部导航栏的效果 Android 底部导航栏有很多种写法,例如: RadioGroup , Tablayout, TabHost  , LinearLayout + ImageView + T ...

最新文章

  1. java 全局变量 内存不回收_Java的内存 - 内存回收
  2. react的导出是怎么实现的_22 个让 React 开发更高效更有趣的工具
  3. 华为防火墙安全区域介绍
  4. 机器学习实战 k-近邻算法 手写识别系统
  5. 授人以鱼不如授人以渔,UCHome全面大解析培训活动【第三集】
  6. POJ 3264 Balanced Lineup 【线段树】
  7. 【数据蒋堂】第28期:迭代聚合语法
  8. sharepoint webpart
  9. 半夜偷看“不良网站”,删除历史记录也没用,“坏影响”已悄然发生
  10. VScode C、c++ 环境(windows10 17763.1131)
  11. 【Windows】多显示器亮度调节工具 - Monitorian
  12. RGB565 转 RGB
  13. 论文常用图表三:盒图 Boxplot【MATLAB】
  14. 福州英华职业学院计算机专业在哪个校区,福州英华职业学院五年制大专地址在哪里...
  15. [JavaScript]使用opencv.js实现基于傅里叶变换的频域水印(隐水印)
  16. 数据结构和算法(二):摘要算法之SHA和MD5
  17. google adsence 盛情
  18. 国移.动50元电话充值 长途ip充值 自.动秒充到账
  19. 卡西欧4800坐标正反算通用程序(终极篇)
  20. Selenium | 页面跳转后无法定位到元素,怎么破?

热门文章

  1. win10安装wget,从此可以更快的下载文件 and windows10 下 zip命令行参数详解
  2. python求绝对值_python求绝对值
  3. 方差分析MATLAB实现
  4. Redis 的过期策略
  5. php是什么币种的外汇英文,外汇币种英文_我要最常用的10个外汇币种和英文简称!_合拍网...
  6. matlab声明全局变量 global
  7. NexT 主题自定义侧边栏图标
  8. python代码美化工具
  9. 解决 tesserocr 无法安装问题!
  10. 构建多基因的系统发育树