@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; }
}

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

  1. 安卓的几种alert对话框

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

  2. [Android Pro] Android 官方推荐 : DialogFragment 创建对话框

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37815413 1. 概述 DialogFragment在android 3.0时 ...

  3. 转帖:Android 官方推荐 : DialogFragment 创建对话框

    转: Android 官方推荐 : DialogFragment 创建对话框 复制内容,留作备份 1. 概述 DialogFragment在android 3.0时被引入.是一种特殊的Fragment ...

  4. 【Android】一种提高Android应用进程存活率新方法

    [Android]一种提高Android应用进程存活率新方法 SkySeraph Jun. 19st 2016 Email:skyseraph00@163.com 更多精彩请直接访问SkySeraph ...

  5. Android中制作自定义dialog对话框的实例

    http://www.jb51.net/article/83319.htm   这篇文章主要介绍了Android中制作自定义dialog对话框的实例分享,安卓自带的Dialog显然不够用,因而我们要继 ...

  6. Android动画 三种动画

    Android可以使用三种动画 Frame Animation-帧动画 ,就像GIF图片,通过一系列Drawable依次显示来模拟动画的效果 Tween Animation-补间动画,给出两个关键帧, ...

  7. Android开发之三种动画

    转载:http://www.cnblogs.com/angeldevil/archive/2011/12/02/2271096.html http://www.lightskystreet.com/2 ...

  8. 【转】24. android dialog ——ProgressDialog 进度条对话框详解

    原文网址:http://blog.csdn.net/jamesliulyc/article/details/6375598 首先在onCreateDialog方法里创建一个ProgressDialog ...

  9. TWebBrowser禁止弹出Alert对话框

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

随机推荐

  1. 使用 EasyBCD 安装Ubuntu 14.04 Error 15: file not found错误的解决方法

    今天安装Window7 和 Ubuntu 14.04 双系统时,出现如下异常,记录一下. 安装过程是参考 http://www.linuxidc.com/Linux/2014-04/100369.ht ...

  2. MapReduce 支持的部分数据挖掘算法

    MapReduce 支持的部分数据挖掘算法 MapReduce 能够解决的问题有一个共同特点:任务可以被分解为多个子问题,且这些子问题相对独立,彼此之间不会有牵制,待并行处理完这些子问题后,任务便被解 ...

  3. STL学习系列二:Vector容器

    1.Vector容器简介 vector是将元素置于一个动态数组中加以管理的容器. vector可以随机存取元素(支持索引值直接存取, 用[]操作符或at()方法,这个等下会详讲). vector尾部添 ...

  4. 转载 SharePoint开发部署WSP解决方案包

    转载原出处: http://642197992.blog.51cto.com/319331/1582731 注:本文所讲内容以SharePoint2013版本为例,开发工具以VS2013为基础.历史版 ...

  5. R语言-Knitr包的详细使用说明

    R语言-Knitr包的详细使用说明 by 扬眉剑 来自数盟[总舵] 群:321311420 1.相关资料 1:自动化报告-谢益辉 https://github.com/yihui/r-ninja/bl ...

  6. ecshop中index.dwt文件分析

    对于ecshop新手来说,这篇总结值得关注. 对于没有web编程基础的同学来说,ecshop模板里面有两个文件特别重要, 但是这两个文件同时也很不好理解,分别是index.dwt和style.css. ...

  7. 多线程操作Coredata(转)

    第一步:搭建 Core Data 多线程环境这个问题首先要解决的是搭建 Core Data 多线程环境.Core Data 对并发模式的支持非常完备,NSManagedObjectContext 的指 ...

  8. springMVC get请求及其请求地址写法

    今天,需要写一个接口,写完之后,测试的时候发线一直报404错误,不知道为什么报错.应该是get请求地址的问题,get请求有两个参数,改为一个参数的时候是好用的,可能那种方式不适合写两个参数的get请求 ...

  9. class ResultServletContextListener implements ServletContextListener

    package com.management.spring; import java.io.BufferedReader; import java.io.IOException; import jav ...

  10. 分析Model2系统心得

    分析Model2系统心得 前言:观摩他人的项目,学到一些新的.实践经验呀!!! 1.  怎样使用字符串处理类?从页面获取的Form类或者字段取值时使用. 2.在验证用户身份时,先推断username, ...