普通对话框

单选对话框

多选对话框

进度条对话框

底部弹出框

1.普通对话框

this 代表当前类 最终继承Context 相当于是子类

getApplicationContext:直接返回的是Context 相当于是父类

实际开发中就对话框特殊 对话框的上下文只能用this.

// [1]创建一个对话框实例

12. AlertDialog.Builder dialog = new Builder(this);

13. dialog.setTitle("警告");

14. dialog.setMessage("世界这么大你想去看看");

15. dialog.setPositiveButton("确定", new OnClickListener() {

16. @Override

17. public void onClick(DialogInterface dialog, int which) {

18.

19. System.out.println("点击了确定");

20. }

21. });

22. dialog.setNegativeButton("取消", new OnClickListener() {

23.

24. @Override

25. public void onClick(DialogInterface dialog, int which) {

26. System.out.println("点击了取消");

27. }

28. });

29. // 最后一步 和 土司一样 一定给我记得show出来

30. dialog.show();

2. 单选对话框

// [1]创建一个对话框实例

35. AlertDialog.Builder dialog = new Builder(this);

36. dialog.setTitle("请选择你喜欢的课程");

37.

38. final String items[] = { "Android", "ios", "javaee", "c++", "C" };

39. // [2]设置下面这个方法的参数就是单选

40. dialog.setSingleChoiceItems(items, -1, new OnClickListener() {

41. // 当点中一个条目执行这个方法 把点中条目的数据取出来

42. @Override

43. public void onClick(DialogInterface dialog, int which) {

44. String data = items[which];

45. Toast.makeText(getApplicationContext(), data, 1).show();

46. // 关闭对话框

47. dialog.dismiss();

48. }

49. });

50. // 最后一步 和 土司一样 一定给我记得show出来

51. dialog.show();

3. 多选对话框

// [1]创建一个对话框实例

57. AlertDialog.Builder dialog = new Builder(this);

58. dialog.setTitle("请选择你喜欢的课程");

59.

60. final String items[] = {"茄子","柿子","黄瓜","白菜","榴莲","苹果"};

61. final boolean checkedItems[]= {true,false,true,false,false,true};

62. //[2]让对话框变为多选对话框

63. dialog.setMultiChoiceItems(items, checkedItems, new OnMultiChoiceClickListener() {

64.

65. @Override

66. public void onClick(DialogInterface dialog, int which, boolean isChecked) {

67. }

68. });

69. //[3]添加确定按钮

70. dialog.setPositiveButton("确定", new OnClickListener() {

71.

72. @Override

73. public void onClick(DialogInterface dialog, int which) {

74. StringBuffer sb = new StringBuffer();

75. //把你选中的水果取出来

76. for (int i = 0; i < checkedItems.length; i++) {

77. if (checkedItems[i]) {

78. //把选中的水果取出来 数据在哪里存着就去哪里取

79. String fruit = items[i];

80. sb.append(fruit + " ");

81. }

82. }

83. Toast.makeText(getApplicationContext(), sb.toString(), 1).show();

84. //关闭对话框

85. dialog.dismiss();

86. }

87. });

88.

89. // 最后一步 和 土司一样 一定给我记得show出来

90. dialog.show();

4. 进度条对话框

//[1]创建进度条对话框

5. final ProgressDialog dialog = new ProgressDialog(this); //与进度相关控件可以在子线程更新ui

6. dialog.setMessage("正在玩命加载中");

7. //[2]改变一下对话框的样式

8. dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);

9. //[3]最后一步show

10. dialog.show();

11. //[4]给进度条设置进度

12. //创建一个子线程

13. new Thread() {

14. public void run() {

15.

16. //[5]设置进度条最大值

17. dialog.setMax(100);

18. //[6]设置进度条当前进度

19. for (int i = 0; i <= 100; i++) {

20. //[7]睡眠50

21. SystemClock.sleep(50);

22. dialog.setProgress(i);

23. }

24. //[8]关闭对话框

25. dialog.dismiss();

26. }

27. }.start();

[ 2 ] 修改对话框的属性

/**

* 弹出进度条对话框

*/

private void showProgressDialog() {

progressDialog = new ProgressDialog(this);

progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//设置进度条的样式,STYLE_HORIZONTAL:水平样式

progressDialog.setProgressDrawable(getResources().getDrawable(R.drawable.custom_progress_horizontal_tomoto));

progressDialog.setCancelable(false);//设置是否可以点击空白处消失

progressDialog.show();//显示操作

}

自定义进度条属性

android:startColor="#ffffff"

android:centerColor="#ffffff"

android:centerY="0.75"

android:endColor="#ffffff"

android:angle="270" />

android:startColor="#eb6100"

android:centerColor="#eb6100"

android:centerY="0.75"

android:endColor="#eb6100"

android:angle="270"/>

android:startColor="#eb6100"

android:centerColor="#eb6100"

android:centerY="0.75"

android:endColor="#eb6100"

android:angle="270"/>

5. 底部弹出框

dialog = new Dialog(this, R.style.ActionSheetDialogStyle);

//填充对话框的布局

inflate = LayoutInflater.from(this).inflate(R.layout.item_dialog_pay, null);

// 初始化控件

TextView close = (TextView) inflate.findViewById(R.id.tv_supportpay_close);

LinearLayout weixin = (LinearLayout) inflate.findViewById(R.id.ll_supportpay_weixin);

LinearLayout zhifubao = (LinearLayout) inflate.findViewById(R.id.ll_supportpay_zhifubao);

close.setOnClickListener(this);

weixin.setOnClickListener(this);

zhifubao.setOnClickListener(this);

// 将布局设置给Dialog

dialog.setContentView(inflate);

// 获取当前Activity所在的窗体

Window dialogWindow = dialog.getWindow();

//最重要的一句话,一定要加上!要不然怎么设置都不行

dialogWindow.setBackgroundDrawableResource(android.R.color.transparent);

// 设置Dialog从窗体底部弹出

dialogWindow.setGravity(Gravity.BOTTOM);

// 获得窗体的属性

WindowManager.LayoutParams lp = dialogWindow.getAttributes();

Display d = dialogWindow.getWindowManager().getDefaultDisplay();

//获取屏幕宽

lp.width = (int) (d.getWidth());

//宽度按屏幕大小的百分比设置,这里我设置的是全屏显示

lp.gravity = Gravity.BOTTOM;

if (lp.gravity == Gravity.BOTTOM)

lp.y = 20;

//如果是底部显示,则距离底部的距离是0

dialogWindow.setAttributes(lp);

dialog.show();//显示对话框

android 中dialog对话框,Android中的对话框dialog相关推荐

  1. android 单选框 icon,Android中的普通对话框、单选对话框、多选对话框、带Icon的对话框、以及自定义Adapter和自定义View对话框详解...

    标签: 对话框就是一个AlertDialog,但是一个简单的AlertDialog,我们却可以将它玩出许多花样来,下面我们就来一起总结一下AlertDialog的用法.看看各位童鞋在平时的工作中否都用 ...

  2. android 中怎么实现点击了对话框的按钮以后对话框不会消失,android 中怎么实现点击了对话框的按钮以后对话框不会消失...

    满意答案 henpokeyo 2014.05.17 采纳率:40%    等级:9 已帮助:667人 在android中当你点击了对话框的按钮以后 不管你是否调用了dismis()函数系统本省都会去调 ...

  3. android中搜索对话框,android – 如何使用onSearchRequested()调用搜索对话框

    我正在尝试实现搜索对话框,我无法显示活动中的搜索. 我在我的清单文件中定义了我的主要活动,此活动向用户显示他们必须选择的选项列表.其中一个选项是"搜索"选项. android:na ...

  4. android fragment 弹出对话框,Android中使用Dialogfragment显示对话框

    其他注意事项: 1.如何设置自己的Dialogfragment没有标题栏? 可以通过两种方法来设置 ,一种是使用dialogfragment的setStyle函数,另外就是使用getDialog(). ...

  5. android开发提示对话框,Android中Notification 提示对话框

    Notification,俗称通知,是一种具有全局效果的通知,它展示在屏幕的顶端,首先会表现为一个图标的形式,当用户向下滑动的时候,展示出通知具体的内容. 一.Notification用于状态栏显示通 ...

  6. 浅谈android中的自定义封装易用的Dialog

    转载地址:http://blog.csdn.net/u013064109/article/details/51990526 好久没写Android的博客,最近在做一个android的项目,里面用到我们 ...

  7. android 带箭头的按钮,用Dialog创建带箭头的对话框

    很多应用中,在点击Button后,会弹出一个带箭头的对话框,指向这个Button.网上查了,很多人都说用PopupWindow可以实现,我对PopupWindow不熟,于是试着用Dialog实现.(需 ...

  8. android中底部弹窗,Android实现从底部弹出的Dialog示例(一)

    一.概述 先给大家看一下效果图: 点击中间的显示弹框按钮,从底部弹出来一个对话框,用户可以点击拍照或者从相册选择进行相应的操作,下面看看怎么实现. 二.代码实现 主页面布局文件,很简单,一个按钮,响应 ...

  9. android圆角对话框,Android项目实战(三十二):圆角对话框Dialog

    原文: Android项目实战(三十二):圆角对话框Dialog 前言:html 项目中多处用到对话框,用系统对话框太难看,就本身写一个自定义对话框.android 对话框包括:一.圆角程序员 二.a ...

最新文章

  1. 【agc019F】Yes or No
  2. XNA Billboard(公告板技术)
  3. Spring Boot + JSP 创建web项目
  4. Python基础:对象的深拷贝和浅拷贝的区别
  5. 不懂电容原理?那是你没看到这些动图
  6. SOFAStack的前世今生
  7. springmvc框架下的国内地区级联效果(共享一下给学习的小伙伴)
  8. android viewpager切换无法显示fragment问题
  9. 047 Permutations II 有重复数字的全排列
  10. leaflet中文文档
  11. leetcode 面试题57 - II. 和为s的连续正数序列
  12. 弱电机房工程搬迁工作内容(方案)
  13. html table 实现表头固定
  14. 上海-苏州 100公里徒步旅行心情分享(一)
  15. 回顾林丹的职业生涯,用python看看粉丝都说了些什么!
  16. java获取当前日期所在周的周六、周日日期
  17. # 计算机科学导论习题见解(机械工业)
  18. python编写一个投票计数器_用python编写计数器
  19. ProE与UG的比较
  20. 特征值分解用于数据压缩(matlab实现)

热门文章

  1. uniapp手写板,签字,签名
  2. MySQl之最全且必会的sql语句
  3. 油液多参数云监测平台实现人工智能化
  4. day03--java基础编程:面向对象,构造方法,代码块讲解,this super,static,final,访问修饰符,方法重写,向上_下造型,main方法,抽象类,接口,设计模式,异常,内部类
  5. 进入新阶段的全球科技革命
  6. 桂林电子科技大学计算机评估,【图片】2016年第四次教育部学科评估结果【桂林电子科技大学吧】_百度贴吧...
  7. 谈谈功能测试、性能测试、自动化测试区别
  8. VSCODE 安装LATEX环境,参数配置,常见问题解决
  9. Confluent:control-center配置启动
  10. cocos lua -- 文字拼接及颜色处理(富文本)