1   :  效果图

btnGeneral.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubAlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);builder.setTitle("提示");builder.setMessage("这是一个普通的对话框!");builder.setIcon(R.drawable.ic_launcher);builder.setCancelable(false);  //必须采取行动builder.setPositiveButton("知道了!", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {dialog.cancel();}});builder.create().show();}});

2 : 效果图

/*而除了专门为按钮点击实现的DialogInterFace.OnClickListener事件外,DialogInterface还提供了一些其他的事件,供Dialog对象响应,这些事件只是对Dialog声明周期各个状态的响应,一看就明白了,就不再详细讲解了,下面是这几个事件的说明:interface DialogInterface.OnCancelListener:当对话框调用cancel()方法的时候触发。
interface DialogInterface.OnDismissListener:当对话框调用dismiss()方法的时候触发。
interface DialogInterface.OnShowListener:当对话框调用show()方法的时候触发。
interface DialogInterface.OnMultiChoiceListener:当对话框使用多选列表,并且选中的时候触发*/
btnButtons.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubAlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);builder.setTitle("提示");builder.setMessage("这是一个多按钮普通的对话框!");builder.setIcon(R.drawable.ic_launcher);builder.setPositiveButton("确定", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {                        Toast.makeText(MainActivity.this, "确定被点击",Toast.LENGTH_SHORT).show();dialog.dismiss();}});builder.setNegativeButton("否定", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {// TODO Auto-generated method stubToast.makeText(MainActivity.this, "否定被点击",Toast.LENGTH_SHORT).show();dialog.dismiss();}});builder.setNeutralButton("忽略", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {// TODO Auto-generated method stubToast.makeText(MainActivity.this, "忽略被点击",Toast.LENGTH_SHORT).show();dialog.cancel();}});builder.show();}
});

3. 效果图

btnListViewSingle.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubAlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);builder.setTitle("请选择一下城市");builder.setSingleChoiceItems(items, 1, new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {// TODO Auto-generated method stubString select_item = items[which].toString();Toast.makeText(MainActivity.this,"选择了--->>" + select_item, Toast.LENGTH_SHORT).show();}});builder.setPositiveButton("确定", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {dialog.dismiss();}});builder.show();}
});

4: 效果图

btnListViewMulti.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubAlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);builder.setTitle("请选择城市");builder.setMultiChoiceItems(items, new boolean[] { true, false,true }, new OnMultiChoiceClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which,boolean isChecked) {// TODO Auto-generated method stubString select_item = items[which].toString();Toast.makeText(MainActivity.this,"选择了--->>" + select_item, Toast.LENGTH_SHORT).show();}});builder.setPositiveButton("确定", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {dialog.dismiss();}});builder.show();}});

5 :效果图  :  自定义dialog

btnCustomDialog.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);View view=LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog_signin,null);Button btn=(Button)view.findViewById(R.id.btnCustom);btn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stub
                        alertDialog.dismiss();Toast.makeText(MainActivity.this, "表单填写完成",Toast.LENGTH_SHORT).show();}});builder.setView(view);   // 设置上 LayoutInflateralertDialog=builder.show();                }});

6 : 效果图 ProgressDialog

btnProgressDialog.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// 第一种方法,使用ProgressDialog构造函数progressDialog = new ProgressDialog(MainActivity.this);progressDialog.setIcon(R.drawable.ic_launcher);progressDialog.setTitle("等待");progressDialog.setMessage("正在加载....");progressDialog.show();//第二种方法,使用静态的show方法//progressDialog=ProgressDialog.show(MainActivity.this, "等待", "正在加载....", false, false);new Thread(new Runnable() {@Overridepublic void run() {try {Thread.sleep(5000);            } catch (Exception e) {e.printStackTrace();}finally{progressDialog.dismiss();}                        }}).start();}
});

转载于:https://www.cnblogs.com/java-g/p/4173026.html

Dialog 基本使用相关推荐

  1. Activity在有Dialog时按Home键的生命周期

    当一个Activity弹出Dialog对话框时,程序的生命周期依然是onCreate() - onStart() - onResume(),在弹出Dialog的时候并没有onPause()和onSto ...

  2. Android Dialog 弹框之外的区域 默认透明背景色修改

    就是下面弹框之外的颜色值 透明度修改 一般弹框外的区域的不是全透明  都有一个默认的值使用的属性为 setDimAmount 这个默认值是0.5 这个值的范围在 0-1 之间 如果设置为1 就是全黑色 ...

  3. Android Dialog 弹出的时候标题栏闪烁一下的处理方法

    之前记录过一篇 dialog 关闭的时候 标题栏会闪烁一下,最近新项目出现关闭的时候闪烁一下 弹出dialog 标题栏闪烁的处理方法 关闭的时候自己的处理方法:就是设置Flags ,代码大致如下 Al ...

  4. Dialog 带白色的边的处理方法

    代码种设置 使用 setBackgroundDrawableResource dialog.getWindow().setBackgroundDrawableResource(android.R.co ...

  5. Android 自定义Dialog 的使用

    单个Dialog 自定义布局 ,这个只能算半自定义,就是一个弹框布局插入到AlertDialog 中 使用setView 即可 代码如下 AlertDialog.Builder builder = n ...

  6. Android Dialog 的使用总结(AlertDialog)

    这个是我总结的自定义弹框,简单明了,希望给个star Dialog 对话框 对话框是一个小窗口,提示用户做出决定或输入其他信息 一般我们最长使用的是AlertDialog 却很少直接使用Dialog ...

  7. 好看的dialog,sweet Alert Dialog 导入Android Studio

    系统自带的dialog实在是丑到无法忍受.所以找到了一款比較好的第三方dialog. github 地址例如以下: https://github.com/pedant/sweet-alert-dial ...

  8. Android对话框-下篇-之设置activity为Dialog

    有人希望做出来的应用程序是一个漂浮在手机主界面的东西,那么很 简单你只需要设置一下Activity的主题就可以了在AndroidManifest.xml 中定义Activity的 地方一句话:andr ...

  9. 基于Dialog的MFC程序在启动时隐藏为托盘程序(四)

    这部分说一下如何加menu..如果做小气球.. mfc的menu确是不如C#活着java那么easy.. 首先在rc里添加menu资源..然后在ui界面里先设置一下你的菜单.. 在第(二)部分已经简单 ...

  10. Android中修改弹出dialog背景无色透明,弹出时有遮罩

    先在styles.xml中写入下面样式 1 <style name="dialog" parent="@android:style/Theme.Dialog&quo ...

最新文章

  1. 直接往res里面写字节
  2. A folder failed to be moved——Android SDK的安装问题解决方案
  3. respect labor
  4. 万字详解:腾讯如何自研大规模知识图谱 Topbase
  5. 29/100. Counting Bits
  6. 三种常见嵌入式设备通信协议
  7. 前端学习(3252):vs code中插件的使用
  8. php+jquery实现图片上传预览_和拖动位置值,PHP教程:thinkphp jquery实现图片上传和预览效果...
  9. 教育部最新公布!2019年高校新增和撤销了这些本科专业
  10. C语言性能优化书籍,Android应用性能优化 (埃尔韦) 中文PDF扫描版
  11. 索引sql server_SQL Server索引设计的五个主要注意事项
  12. 发现了一个美图看看软件的一个bug
  13. 昨晚我遇到了超级网红:区块链本人
  14. 如何把flv视频转成mp4?
  15. list object has no attribute ZScan_【恋爱体验】No.112丨大二男生,河南南阳,身高178,喜欢篮球、羽毛球、兵乓球、足球.........
  16. L1-078吉老师的回归
  17. Exception:There is no getter for property named ‘qo‘ in ‘class cn.xxxxxx.rbac.qo.XxxxQo 的两种错误可能及解决方案
  18. veek-soc-iii_所以您想使用招聘人员第III部分-警告
  19. 山东大学密码学引论复习重点总结与期末试题
  20. 【书摘】The Joshua tree epiphany

热门文章

  1. c函数strstr和sscanf组合高级技巧
  2. Golang实践录:使用gin框架实现转发功能:一些负载均衡算法的实现
  3. 解决h264bitstream的一个bug
  4. Oracle回退不小心drop掉得表
  5. Eclipse创建springboot项目的方式
  6. iis8.5限速没有效果怎么回事_电梯为何会发生坠梯?没有安全措施吗?能在井道底安装大弹簧吗?...
  7. 【Kafka】Flink kafka TimeoutException Timeout expired while fetching topic metadata
  8. 【kafka】java使用jmx 监控Kafka
  9. 95-130-342-源码-source-kafka相关-AbstractPartitionDiscoverer
  10. 【FastJson】FastJson一个Bug java.util.LinkedHashMap cannot be cast to com.alibaba.fastjson.Jsonobject