Android常用的几种对话框
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常用的几种对话框相关推荐
- Android常用的几种资源
2019独角兽企业重金招聘Python工程师标准>>> Android常用的几种资源 一般资源都是放在res文件夹下的,res文件夹一般包含有values,drawable-ldpi ...
- Android常用的五种布局
开发工具与关键技术:Android studio64, Android 1.FrameLayout(帧布局)是最简单的布局方式,放置的控件都只能罗列到左上角,控件会有重叠,不能进行复杂的布局. 2.L ...
- 安卓项目实战之:Android常用的5种加密方式
前言 按加密结果是否可以被解密分为可逆和不可逆: 1,不可逆: MD5(Message-Digest消息摘要):不可逆,长度固定(32位),容易计算,仅一字节只差加密结果都会有很大区别 通常情况下为了 ...
- 【Android】Android 8种对话框(Dialog)
1.写在前面 Android提供了丰富的Dialog函数,本文介绍最常用的8种对话框的使用方法,包括普通(包含提示消息和按钮).列表.单选.多选.等待.进度条.编辑.自定义等多种形式,将在第2部分介绍 ...
- android 8种对话框(Dialog)使用方法汇总
本文为作者原创,转载请注明出处:http://www.cnblogs.com/gzdaijie/p/5222191.html 目录 1.写在前面 2.代码示例 2.1 普通Dialog(图1与图2) ...
- 【REACT NATIVE 系列教程之十三】利用LISTVIEW与TEXTINPUT制作聊天/对话框获取组件实例常用的两种方式...
本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/react-native/2346.html ...
- android自定义dialog开源库,android-dialog: 此框架提供五种对话框的显示,并支持对话框的扩展,目的是为了提供对话框的统一管理,并提供对话框显示的公共接口。...
android-dialog 此框架提供七种对话框的显示,并支持对话框的扩展,目的是为了提供对话框的统一管理,并提供对话框显示的公共接口. LoadingDialog:正在加载对话框 MessageD ...
- QT入门基础认知(三个常用类、三种对话框类型、信号和槽)
1.简单介绍: 1.1 三个常用类(Qwidget类.QDialog类.QMainwindow类) Qwidget类:继承与QObject类和QPaintdevice类,所有用户界面对象的基类,常用于 ...
- android常用两种适配器,Android常见设计模式五:适配器模式
对于开发人员来说,设计模式有时候就是一道坎,但是设计模式又非常有用,过了这道坎,它可以让你水平提高一个档次.而在android开发中,必要的了解一些设计模式又是必须的,因为设计模式在Android源码 ...
- Android底部导航栏最常用的两种写法
先来看看底部导航栏的效果 Android 底部导航栏有很多种写法,例如: RadioGroup , Tablayout, TabHost , LinearLayout + ImageView + T ...
最新文章
- java 全局变量 内存不回收_Java的内存 - 内存回收
- react的导出是怎么实现的_22 个让 React 开发更高效更有趣的工具
- 华为防火墙安全区域介绍
- 机器学习实战 k-近邻算法 手写识别系统
- 授人以鱼不如授人以渔,UCHome全面大解析培训活动【第三集】
- POJ 3264 Balanced Lineup 【线段树】
- 【数据蒋堂】第28期:迭代聚合语法
- sharepoint webpart
- 半夜偷看“不良网站”,删除历史记录也没用,“坏影响”已悄然发生
- VScode C、c++ 环境(windows10 17763.1131)
- 【Windows】多显示器亮度调节工具 - Monitorian
- RGB565 转 RGB
- 论文常用图表三:盒图 Boxplot【MATLAB】
- 福州英华职业学院计算机专业在哪个校区,福州英华职业学院五年制大专地址在哪里...
- [JavaScript]使用opencv.js实现基于傅里叶变换的频域水印(隐水印)
- 数据结构和算法(二):摘要算法之SHA和MD5
- google adsence 盛情
- 国移.动50元电话充值 长途ip充值 自.动秒充到账
- 卡西欧4800坐标正反算通用程序(终极篇)
- Selenium | 页面跳转后无法定位到元素,怎么破?