要显示一个对话框,首先需要在xx.xml下添加一个Button按钮,并添加一个对应id。

单次点击事件对话框:

 button.setOnClickListener(new View.OnClickListener(){

            @Override
public void onClick(View v) {
//定义对话框的步骤
//1.获取buidlder对象
final AlertDialog.Builder builder =new AlertDialog.Builder(MainActiviy.this);
//2.通过调用builder对象的方法,设置对话框的标题,内容,图标,按钮
builder.setMessage("这是一个简单的对话框");
//3.通过bulider创建简单的对话框
builder.create();
//4.通过builder对象的show方法,显示对话框
builder.show(); 多事件对话框选择:
  builder.setMessage("你是一个简单的傻哥")
  .setTitle("对话框")
.setIcon(R.drawable.cat)
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
button.setText("您点了确定");
}
})
.setNegativeButton("取消",null)
.create()
.show(); }
});
}
点击选择提示对话框:
 builder.setItems(new String[]{"红色", "黄色", "绿色"}, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch(which){
case 0:
button.setText("傻哥");
break
case 1:
button.setText("傻哥1");
break;
case 2:
button.setText("傻哥2");
break; } }
})
  .setIcon(R.drawable.cat)
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
button.setText("您点了确定");
}
})
.setNegativeButton("取消",null)
.create()
.show(); }
});
} 调用颜色变化:
  builder.setSingleChoiceItems(new String[]{"红色","黄色","绿色"},
1,new DialogInterface.OnClickListener(){ @Override
public void onClick(DialogInterface dialog, int which) {
switch (which){
case 0:
button.setTextColor(getResources().getColor(R.color.colorAccent));
break;
case 1:
button.setTextColor(getResources().getColor(R.color.colorPrimary));
break;
case 2:
button.setTextColor(getResources().getColor(R.color.colorPrimaryDark));
break;
} }
}) .setTitle("对话框")
.setIcon(R.drawable.cat)
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
button.setText("您点了确定");
}
})
.setNegativeButton("取消",null)
.create()
.show(); }
});
}
多选对话框
init();
button.setOnClickListener(new View.OnClickListener(){ @Override
public void onClick(View v) {
AlertDialog.Builder builder=new AlertDialog.Builder(Main20170326.this);
final boolean[] checkeds={true,true,false};
final String[] items =new String[]{"红色","黄色","蓝色"};
builder.setMultiChoiceItems(new String[]{"红色","黄色","蓝色"}
, checkeds,new DialogInterface.OnMultiChoiceClickListener(){ @Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
String result="";
for(int i=0; i<checkeds.length;i++){
if(checkeds[i]){
result +=items[i]+"";
}
}
textView.setText(result);
}
})
.setTitle("多选对话框")
.create()
.show();
}
}); }

												

关于Android对话框简单实用方法总结的更多相关文章

  1. bootstrapValidator.js,最好用的bootstrap表单验证插件 简单实用方法

    实用方法 1.引入 在有jquery和bootstrap的页面里引入bootstrapValidator.js和bootstrapValidator.css文件 2. 按照bootstrap的表单组件 ...

  2. Android FlycoDialog 简单实用的自定义Android弹窗对话框之Dialog篇

    效果图镇楼   FlycoDialog是一款非常棒的弹窗对话框处理框架,今天在这里主要讲一下他的自定义弹出对话框的功能,这里以第二幅效果图为例,图片已经放在博客最下方,X号自己随便找一个东西代替吧.  ...

  3. Android反编译工具介绍与简单实用方法

    Android反编译的目的无非就是为了看到APK的xml.资源和代码: 得到代码的方式:直接解压APK文件 --> 得到classes.dex文件 --> 使用 dex2jar class ...

  4. Android ListView简单实用

    layout创建: activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/ ...

  5. Java 简单实用方法二

    整理以前的笔记,在学习Java时候,经常会用到一些方法.虽然简单但是经常使用.因此做成笔记,方便以后查阅 这篇博文先说明构造和使用这些方法. 1,判断String类型数据是否包含中文 可以通过正则表达 ...

  6. Android ProgressDialog 简单实用

    ProgressDialog progressDialog; @SuppressLint("HandlerLeak") Handler handler1 = new Handler ...

  7. Swiper的简单实用方法

    最近项目中有用到一个非常强大的组件idangerous.swiper.js的组件,这个组件能够实现幻灯片的播放效果,而且有各种3D效果,大家可以去试一下,效果很不错的说! 这是这个项目的api文档:h ...

  8. android Mvp简单实用

    View 对应于Activity,负责View的绘制以及与用户交互Model 依然是业务逻辑和实体模型Presenter 负责完成View于Model间的交互 模拟客户端的登录操作,并实现登录成功与登 ...

  9. 浅谈vuex使用方法(vuex简单实用方法)

    Vuex 是什么? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vu ...

随机推荐

  1. Kafka学习笔记(3)----Kafka的数据复制(Replica)与Failover

    1. CAP理论 1.1 Cosistency(一致性) 通过某个节点的写操作结果对后面通过其他节点的读操作可见. 如果更新数据后,并发访问的情况下可立即感知该更新,称为强一致性 如果允许之后部分或全 ...

  2. 克隆CentOS 6.9 配置静态IP,重启网络服务时报错

    克隆的CentOS 6.9 第一次开机时,VMware workstation会为新虚拟机自动生成新mac地址,导致虚拟机配置文件中mac地址与虚拟机新mac地址不一致. 解决方法:1. 修改网卡配置 ...

  3. Substring Uva 11468_记忆化搜索 + AC自动机

    Code: #include<cstdio> #include<cstring> #include<queue> using namespace std; cons ...

  4. k8s的概念

    Kubernetes(简称为 K8s),最初由 Google 的工程师开发和设计.Kubernetes 是用于自动部署.扩展和管理容器化应用程序的开源系统,它旨在提供跨主机集群的自动部署.扩展以及运行 ...

  5. grep的各种用法

    1. 在文件中查找模式(单词) 在/etc/passwd文件中查找单词 root [root@localhost opt]# grep root /etc/passwdroot:x:0:0:root: ...

  6. mybatis入门截图三

    ----------------------------------------------- <!-- 用户信息的综合查询 --> <select id="userlis ...

  7. 干货:鲜为人用的MySQL高级特性与玩法!

    上一篇文章<万字总结:学习MySQL优化原理,这一篇就够了!>文末给大家留有两个开放的问题: 有非常多的程序员在分享时都会抛出这样一个观点:尽可能不要使用存储过程,存储过程非常不容易维护, ...

  8. ASP.NET中的Webconfig 和 Global.asax区别

    Web.Config与Global.asax的区别: Config可以根据不同的错误类型定义不同的错误页,网站重定义转向新的错误页面. Global,在全局错误中写入应用程序事件错误信息,并在当前页输 ...

  9. tableView计算动态行高的总结

    研究tableView怎么计算动态行高研究了两天一直还不太会,今天最终做出来了想要的效果. 首先.我在网上搜集了非常多资料,各种大神的总结,然后開始看.研究.试验,基本思路都是一样的. 1.一定要将l ...

  10. [HTML5] Text Alternatives

    Most of times, we need 'alt' to the images, so it can tell the screen reader what is this image abou ...