1.显示内容

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("对话框标题");
builder.setMessage("对话框内容");
AlertDialog dialog = builder.create();
dialog.show(); //new AlertDialog.Builder(MainActivity.this).setTitle("标题").setMessage("内容").create().show();大神写法

2.赞成/中立/反对按钮

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("标题");
builder.setMessage("内容");
builder.setNegativeButton("反对", new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "反对派", Toast.LENGTH_LONG).show();
}
});
builder.setNeutralButton("中立", new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "中立派", Toast.LENGTH_LONG).show();
}
});
builder.setPositiveButton("赞同", new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "赞同派",Toast.LENGTH_LONG).show();
}
});
AlertDialog dialog = builder.create();
dialog.show();

3.单选框

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("旅游");
final String[] items = new String[]{"国外游","省外游","郊游"};
builder.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, items[which], Toast.LENGTH_LONG).show();
dialog.dismiss();
}
});
AlertDialog dialog = builder.create();
dialog.show();

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("旅游");
final String[] items = new String[]{"国外游","省外游","郊游"};
builder.setSingleChoiceItems(items, checkedItem, new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
checkedItem = which;
}
});
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, items[checkedItem], Toast.LENGTH_LONG).show();
}
});
AlertDialog dialog = builder.create();
dialog.show();

4.复选框

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("你喜欢哪部四大名著?");
final String[] items = new String[]{"西游记","三国演义","水浒传","红楼梦"};
final boolean[] checkedItems = new boolean[]{true,false,false,false};
builder.setMultiChoiceItems(items, checkedItems, new DialogInterface.OnMultiChoiceClickListener() { @Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
checkedItems[which] = isChecked;
}
});
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
String str = "";
for(int i = 0;i<checkedItems.length;i++){
if(checkedItems[i]){
str +=items[i]+ " ";
}
}
Toast.makeText(MainActivity.this, str, Toast.LENGTH_LONG).show();
}
});
AlertDialog dialog = builder.create();
dialog.show();

5.自定义

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("标题");
LayoutInflater inflater = LayoutInflater.from(MainActivity.this);
View view = inflater.inflate(R.layout.dialog, null);
builder.setView(view);
AlertDialog dialog = builder.create();
dialog.show();

注:

获得LayoutInflater对象有三种方法(效果一样):

*通过LayoutInflater的静态方法from()获得

LayoutInflater inflater = LayoutInflater.from(MainActivity.this); 

*通过Activity的getLayoutInflater()方法获得

LayoutInflater inflater = this.getLayoutInflater(); 

*通过系统服务获取

LayoutInflater inflater = (LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

然后

View view = inflater.inflate(R.layout.activity_main, null);
setContentView(view);

6.进度条

final ProgressDialog dialog = new ProgressDialog(MainActivity.this);
dialog.setTitle("标题");
dialog.setMessage("内容");
dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progress = 0;
Timer timer = new Timer();
timer.schedule(new TimerTask() { @Override
public void run() {
progress+=10;
if(progress>100){
progress=100;
dialog.dismiss();
}
dialog.setProgress(progress);
}
}, 1000 , 1000);
dialog.show();

7.显示Item的对话框

private String[] items = {"魏","蜀","吴"};

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setItems(items, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this,items[which],Toast.LENGTH_SHORT).show();
}
});
AlertDialog dialog = builder.create();
dialog.show();

效果图:

8.显示listview的对话框

ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,new String[]{"张三","李四"});
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setAdapter(adapter, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) { }
});
AlertDialog dialog = builder.create();
dialog.show();

效果图:

9.显示自定义view的对话框

View view = LayoutInflater.from(this).inflate(R.layout.activity_main,null);
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setView(view);
AlertDialog dialog = builder.create();
dialog.show();

效果图:

Dialog对话框的更多相关文章

  1. Android UI系列-----Dialog对话框

    您可以通过点击 右下角 的按钮 来对文章内容作出评价, 也可以通过左下方的 关注按钮 来关注我的博客的最新动态. 如果文章内容对您有帮助, 不要忘记点击右下角的 推荐按钮 来支持一下哦 如果您对文章内 ...

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

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

  3. matlab学习------------普通dialog对话框,错误对话框errordlg,警告对话框warndlg

    Dialog对话框 语法: h = dialog('PropertyName',PropertyValue,...) 对话框的默认属性 WindowStyle的值:   {normal} | moda ...

  4. android从Dialog对话框中取得文本文字

    android中Dialog对话框获取文本文字,只需要使用editor的getText方法就可以获得,示例如下:final EditText et = new EditText(this); et.s ...

  5. 窗口-EasyUI Window 窗口、EasyUI Dialog 对话框、EasyUI Messager 消息框

    EasyUI Window 窗口 扩展自 $.fn.panel.defaults.通过 $.fn.window.defaults 重写默认的 defaults. 窗口(window)是一个浮动的.可拖 ...

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

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

  7. 第二百零四节,jQuery EasyUI,Dialog(对话框)组件

    jQuery EasyUI,Dialog(对话框)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解EasyUI中Dialog(窗口)组件的使用方法,这个组件依赖 ...

  8. JQuery Dialog对话框 不能通过Esc关闭

    背景:想通过Esc键关闭展示中的Dialog对话框,发现有些对话框可以,有些会失效. 原因分析: 1.对话框上可以输入内容的标签元素可以,反之不行. 2.如果鼠标点击对话框后,也可以Esc键关闭. 可 ...

  9. Android学习(十九)Dialog对话框

    一.什么是Dialog对话框 对话框是当前页面中弹出的一个小窗口,用于显示重要的提示信息,提示用户输入信息,确认信息,或者显示某种状态,如下载进度,退出提示等等.用户需要与对话框进行交互,才能回到原窗 ...

  10. 事件监听机制——列出指定目录内容、添加Dialog对话框

    事件监听机制理解与Dialog练习 利用Java语言,仿照我的电脑目录进行打开目录,输入文件路径,查看该路径下所有的文件,设置两个文本框,一个转到按钮,当点击转到按钮时,查看路径是否正确,若正确在第二 ...

随机推荐

  1. Vimer的福音 新时代的Vim C++自动补全插件 clang_complete

    使用vim的各位肯定尝试过各种各样的自动补全插件,比如说大名鼎鼎的 OmniCppComplete .这一类的插件都是对 Ctags 生成的符号表进行字符串匹配来获得可能的补全项.他们在编写 C 代码 ...

  2. 虚拟机里面安装Openfiler 2.99

    简介 Openfiler 由rPath Linux驱动,它是一个基于浏览器的免费网络存储管理实用程序,可以在单一框架中提供基于文件的网络连接存储 (NAS) 和基于块的存储区域网 (SAN).Open ...

  3. NGUI 图集生成 图片Sprite 有撕裂边的问题

    修改 Dimensions 的 X 和 Y值进行调整. 在生成图集时 选择Padding 设置1以上 应该不会出现这个问题.

  4. Unity3D中定时器的使用

    源地址:http://unity3d.9tech.cn/news/2014/0402/40149.html 在游戏设计过程中定时器是必不可少的工具,我们知道update方法是MonoBehavior中 ...

  5. Encapsulation and Requiring Files

    By encapsulating all the logic for an object, whether it’s a Dog or a User or an IceCreamShop, you a ...

  6. Item 表单页面的 Select2 相关业务逻辑

    Select2 插件官网:https://select2.github.io/ Select2 初始化说明: 代码在 public/javascripts/subchannel_items.js 中的 ...

  7. [codeforces 528]A. Glass Carving

    [codeforces 528]A. Glass Carving 试题描述 Leonid wants to become a glass carver (the person who creates ...

  8. Windows/Centos安装GO语言环境

    转载:http://www.haiyun.me/archives/1009.html Centos下使用epel源安装: 1 yum install golang Centos/Linux下源码安装g ...

  9. annotation(@Retention@Target)详解

    一.注解:深入理解JAVA注解 要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解的语法. 1.元注解(meta-a ...

  10. 【转】maven命令背后是如何工作的

    转载自:http://yinny.iteye.com/blog/1883488 Maven强大的一个重要的原因是它有一个十分完善的生命周期模型(lifecycle),它有三套相互独立的生命周期,请注意 ...