@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. 浅谈reverse_iterator的base()函数

    非原创,原文链接:http://blog.csdn.net/shuchao/article/details/3705252 调用reverse_iterator的base成员函数可以产生"对 ...

  2. Bzoj 4403: 序列统计 Lucas定理,组合数学,数论

    4403: 序列统计 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 328  Solved: 162[Submit][Status][Discuss] ...

  3. Tasks on 2013

    1.改进并补充实验 2.样本选取和文档分布调查 3. Diversity Metrics 4. PPT for Project starting 1. Chrome & webkit 2. O ...

  4. android NDK 实用学习(五)-c++端调用java接口

    1,阅读此文章前请阅读前面文章,以免阅读出现障碍: android NDK 实用学习(一)-获取java端类及其类变量 android NDK 实用学习(二)-java端对象成员赋值和获取对象成员值 ...

  5. InetAddress

    InetAddress对域名进行解析是使用本地机器配置或者网络命名服务(如域名系统(Domain Name System,DNS)和网络信息服务(Network Information Service ...

  6. Spring配置文件的加载,及装载多个beans.xml文件

    applicationContext.xml 是spring的全局配置文件,用来控制srping的特性 1  手动加载自定义的beans.xml文件 @Test public void testAut ...

  7. MariaDB-5.5.32源码编译安装

    MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:Oracle公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分 ...

  8. [iOS基础控件 - 2] 按钮的基本使用

    UIButton A.素材准备 1.图片素材放置到Images.xcassets中     B.按钮状态 1.normal:默认状态 Default 对应的枚举常量:UIControlStateNor ...

  9. Ajax调用WebService(一)

    Ajax调用WebService(一) http://www.cnblogs.com/leslies2/archive/2011/01/26/1934889.html 分类: Ajax 使用技术 We ...

  10. ecshop中index.dwt文件分析

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