@Override
public void onClick(View v) { switch (v.getId()) {
case R.id.d1: AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle("这是标题...");
builder.setMessage("这就是一个确认取消对话框...");
builder.setPositiveButton("确认", new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "你点击了确认按钮...", 0).show();
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "你点击了取消按钮...", 0).show();
}
});
builder.show();
break;
case R.id.d2:
AlertDialog.Builder builder1=new AlertDialog.Builder(this);
builder1.setTitle("这是标题...");
final String[] strings=new String[]{"小红","小明"};
builder1.setSingleChoiceItems(strings, -1, new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "你选择了:"+strings[which], 0).show(); }
}); builder1.show();
break;
case R.id.d3:
AlertDialog.Builder builder11=new AlertDialog.Builder(this);
builder11.setTitle("这是标题...");
final String[] strings1=new String[]{"小红","小明"};
boolean[] b=new boolean[]{false,true};
builder11.setMultiChoiceItems(strings1, b, new DialogInterface.OnMultiChoiceClickListener() { @Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) { Toast.makeText(MainActivity.this, "你选择了:"+strings1[which]+" : "+isChecked, 0).show();
}
});
builder11.show();
break; //进度对话框
case R.id.d4: // ProgressDialog pDialog=new ProgressDialog(this);
// pDialog.setTitle("这是一个进度框...");
// pDialog.setMax(100);
// pDialog.show(); //这是比较简陋的方法,下面的比较全面合理
final ProgressDialog proDialog = android.app.ProgressDialog.show(MainActivity.this, "测试", "2秒后自动消失!");
Thread thread = new Thread()
{
public void run()
{
try{
sleep(2000);
} catch (InterruptedException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
proDialog.dismiss();//万万不可少这句,否则会程序会卡死。
}
};
thread.start();
break;
case R.id.d5: xh_count = 0; // 创建ProgressDialog对象
final ProgressDialog xh_pDialog = new ProgressDialog(this); // 设置进度条风格,风格为矩形
xh_pDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); // 设置ProgressDialog 标题
xh_pDialog.setTitle("提示"); // 设置ProgressDialog提示信息
xh_pDialog.setMessage("这是一个长形进度条对话框"); // 设置ProgressDialog标题图标
// xh_pDialog.setIcon(R.drawable.img2); // 设置ProgressDialog 的进度条是否不明确 false 就是不设置为不明确
xh_pDialog.setIndeterminate(false); // 设置ProgressDialog 进度条进度
xh_pDialog.setProgress(200);
xh_pDialog.setMax(200); //下面两种都可以解决触摸其他地方消失的问题
xh_pDialog.setCancelable(false); // 设置ProgressDialog 是否可以按退回键取消
// xh_pDialog.setCanceledOnTouchOutside(false);//这种不会阻止返回键 // 设置ProgressDialog 的一个Button 可以用来取消对话框
xh_pDialog.setButton("取消", new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
// 点击“确定”按钮取消对话框
// dialog.cancel();
xh_pDialog.dismiss();
}
});
// 让ProgressDialog显示
xh_pDialog.show(); new Thread() {
@Override
public void run() {
try {
while (xh_count <= 200) {
// 由线程来控制进度
xh_pDialog.setProgress(xh_count++);
Thread.sleep(100);
}
xh_pDialog.dismiss();
} catch (Exception e) {
xh_pDialog.cancel();
}
}
}.start(); break; }
}

安卓的几种alert对话框的更多相关文章

  1. Android的几种alert对话框

    @Override public void onClick(View v) { switch (v.getId()) { case R.id.d1: AlertDialog.Builder build ...

  2. TWebBrowser禁止弹出Alert对话框

    以前介绍过通过编写Webbrowser1的OnDocumentComplete事件响应代码可以拦截网页弹出的Alert等对话框,代码如下: procedure TForm1.WebBrowser1Do ...

  3. iOS8以后UIAlertView和UIActionSheet两种alert页面都将通过UIAlertController来创建

    1. Important: UIAlertView is deprecated in iOS 8. (Note that UIAlertViewDelegate is also deprecated. ...

  4. Selenium(七)多窗口切换、等待方法、alert对话框处理

    一.多窗口切换 1.打开百度首页 2.在百度中搜索博客园 3.从搜索结果中跳转到博客园 4.博客园首页和百度搜索页面切换 handle:句柄 二.等待方法 time.sleep(5) 先导入方法 参数 ...

  5. Delphi中点击网页弹出的Alert对话框的确定按钮

    思路: 使用Windows API函数遍历窗口,查找指定标题的窗口,然后从该窗口查找确定按钮,向该按钮发送鼠标消息进行模拟点击.由于IE8由Alert弹出的网页对话框的标题是“来自网页的消息”,而IE ...

  6. 安卓AlertDialog四种对话框的最科学编写用法

    首先我们上图: xml的代码如下,用于编写按钮: <?xml version="1.0" encoding="utf-8"?> <Linear ...

  7. Android开发必知--几种不同对话框的实现

    在开发过程中,与用户交互式免不了会用到对话框以实现更好的用户体验,所以掌握几种对话框的实现方法还是非常有必要的.在看具体实例之前先对AlertDialog做一个简单介绍.AlertDialog是功能最 ...

  8. JS confirm或alert对话框中的换行

    如题. alert.confirm对话框的换行可以使用回车符或换行符:\n,\r 也可以使用回车符或换行符对应的unicode编码:\u000a,\u000d,这是等效的. //确认信息 var co ...

  9. Android之UI--打造12种Dialog对话框

    最近有空,来把app中常用到的Dialog对话框写一篇博客,在app中很多地方都会用到Dialog对话框,今天小编我就给大家介绍Dialog对话框. 先看看效果图: 12种,可根据需求选择,上图可知, ...

随机推荐

  1. golang defer那些坑

    defer以下几个特性,使用时需要关注下. 即时的参数传递 调用os.Exit()时defer不会被执行 defer与return的先后顺序 1.即时的参数传递 定义defer时传入的参数,是作为拷贝 ...

  2. centos7 禁止root远程ssh直接登录

    修改/etc/ssh/sshd_config文件,将 #PermitRootLogin yes 修改为 PermitRootLogin no   查看 more /etc/ssh/sshd_confi ...

  3. linux 下的快捷键操作

    概述 今天发现自己码代码的效率有点低,所以查找了一下 linux 常用的快捷键操作,记录下来,供以后开发时参考,相信对其他人也有用. linux 终端常用快捷键 tab:补全命令 Ctrl + u:剪 ...

  4. linux 代码更新-打包-重启脚本

    #! /bin/sh base=/home/project/myblog cd $base git pull ] then echo "Error in git pull!!! Stop d ...

  5. Selenium 2自动化测试实战6(异常)

    一.异常 python用异常队形(exception object)来表示异常情况,遇到错误后,会引发异常.如果异常对象并未被处理和捕捉,则程序就会用所谓的回溯(Traceback,一种错误信息)来终 ...

  6. Redis 常用命令 大全

    Redis 常用命令 发现几个很好的 Redis 常用命令汇总大全网页,分享给小伙伴们~ 1.Redis 命令参考 http://redisdoc.com/string/index.html 2.W3 ...

  7. 文件分发服务器 AWS CloudFront(CDN)使用入门-以S3为例 Lebal:Research

    引言 在互联网上随意右击一张图片,都可以发现复制图片地址这个选项,这说明他们都有自己的链接(直链),也就是说我们可以通过一个链接本身来访问图片.代码等文件,而不是打开一个网页再选择复制,这就和下载链接 ...

  8. django 如何传递id 参数

    urls.py  注意这里的bid

  9. 【PyTorch】PyTorch使用LMDB数据库加速文件读取

    PyTorch使用LMDB数据库加速文件读取 原始文档:https://www.yuque.com/lart/ugkv9f/hbnym1 对于数据库的了解较少,文章中大部分的介绍主要来自于各种博客和L ...

  10. 20191224 Spring官方文档(启动)

    再学Spring 之前看过Spring教学视频,看过<Spring5高级编程>,但是对于Spring始终还是感觉差了一点,应该是底层没有学好,这次再学Spring,就是要将Spring底层 ...