`
ZaneLee007
  • 浏览: 21322 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Android 自定义Dialog

阅读更多

网上应该有不少类似的代码了,总结一下

推荐两篇不错的文章:

系统dialog大全:http://www.cnblogs.com/salam/archive/2010/11/15/1877512.html

自定义:http://www.cnblogs.com/windlivefamily/articles/2133956.html

 

如果是视图上自定义,则系统dialog完全可以满足需求,只需为dialog设置相应的contentView即可

几个重要的点:

     1、透明效果

      <?xml version="1.0" encoding="utf-8"?>

        <resources>

           <style name="dialog" parent="@android:style/Theme.Dialog">

               <item name="android:windowFrame">@null</item><!--边框-->

               <item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->

               <item name="android:windowIsTranslucent">false</item><!--半透明-->

               <item name="android:windowNoTitle">true</item><!--无标题-->

               <item name="android:windowBackground">#00000000</item><!--背景透明-->

               <item name="android:backgroundDimEnabled">false</item><!--模糊-->

           </style>

      </resources>

   2、返回键是否取消展示:setCancelable(boolean)

   3、触碰非dialog区域,是否取消展示:setCanceledOnTouchOutside(boolean)

    4、cancel和dismiss视觉上是一样的使dialog消失,但是触发的事件不一样,前者触发OnCancel事件,后者触发了onDismiss事件,如果设置了相应的监听器或调用了相关函数的话,需注意区分。

 

如果要设置dialog的位置,需要使用Window,同样,如果设置全屏也是需要window来处理的,因为View是在window里展示的,更改位置和设置全屏都是在默认的window里做的,显然这个默认的window不能满足需求。

设置window的属性必须在设置dialog试图之前!

自定义位置:

     Dialog dialog = new Dialog(Context, theme);//theme可能为透明效果,如上1

     LayoutParams lp =  dialog.getWindow.getAttribute();

     lp.gravity = //设置位置

     lp.x=

     lp.y=//这儿都是相对于gravity的位置,比如设置为靠右上,x = 50, y=50,dialog则从右上角50,50处往屏幕左下方展示

     最后不要忘了更新布局参数和show dialog

分享到:
评论

相关推荐

    android 自定义Dialog提示+动画效果

    在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的UI风格和功能需求进行个性化设计。本文将深入探讨如何实现一个带有动画效果的自定义Dialog,并以"android 自定义Dialog提示+动画效果"为主题...

    Android 自定义dialog

    在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的UI风格和功能需求创建具有...通过学习和实践,你将能够熟练掌握Android自定义Dialog的技巧,从而在应用开发中提供更加丰富和个性化的用户体验。

    Android自定义dialog

    在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的设计风格和功能需求创建出独具特色的对话框。本文将深入探讨如何在Android中实现自定义Dialog,并提供相关实践步骤。 首先,我们来理解一下...

    Android自定义dialogDemo

    `Android自定义dialogDemo`是一个实例,帮助开发者理解如何在Android应用中创建并使用自定义的Dialog。下面将详细解释相关知识点。 1. **Dialog基础** Dialog是Android中的一个对话框组件,通常用于显示临时的通知...

    android自定义Dialog的简单实现

    在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的设计风格或者特定功能来创建具有...在学习和实践中,多参考官方文档和社区资源,如CSDN博客,能帮助你更好地掌握Android自定义Dialog的技巧。

    Android自定义Dialog 界面比较好看

    标题“Android自定义Dialog 界面比较好看”表明我们将探讨如何创建一个视觉上吸引人的自定义Dialog。描述中提到的链接是一个CSDN博客文章,详细介绍了如何实现这一目标。 自定义Dialog的基础在于创建一个新的布局...

    Android自定义Dialog

    在Android应用开发中,Dialog是一种重要的用户交互组件,它用于在主界面之上显示临时的通知或进行简单的交互。本文将深入探讨如何自定义...通过不断实践和优化,你将能够熟练地创建出满足各种需求的自定义Dialog。

    Android自定义Dialog多选对话框(Dialog+Listview+CheckBox)

    在Android开发中,自定义Dialog是一种常见的需求,用于提供一种轻量级的用户交互界面,如提示信息或者进行选择操作。本示例是关于如何创建一个具有多选功能的Dialog,结合了Dialog、ListView和CheckBox的使用。下面...

    android自定义dialog加载窗

    "android自定义dialog加载窗"这个主题主要涵盖了如何在Android应用程序中创建自定义的加载对话框,通常用于显示数据加载或处理过程,给用户以交互反馈。 1. **Dialog基础知识**: Dialog是Android系统提供的一种轻...

    Android 自定义Dialog,文字动态加载效果

    在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的UI风格和功能需求创建独特的对话框。本文将详细讲解如何通过继承AlertDialog来实现一个具有“加载中...”动态效果的自定义Dialog。 首先,...

    android自定义dialog嵌套listview

    通过以上步骤,我们便成功实现了Android自定义Dialog嵌套ListView的功能,并为ListView的每个条目添加了点击事件处理。这种方式极大地扩展了Dialog的使用场景,使其能够在提供多种选项或展示大量数据时发挥重要作用...

    android 自定义dialog Demo

    在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的设计风格和功能需求创建具有独特外观和交互的对话框。这篇博客“android 自定义dialog Demo”将深入探讨如何在Android应用程序中实现自定义...

    android 自定义Dialog下载文件

    android自定义Dialog下载文件 ,在自定义的Dialog上显示文件下载的速度和ProgressBar进度,共享给大家! 欢迎指点提议 Email:vipa1888@163.com QQ 840950105 Author: spring sky

    android自定义dialog嵌套listview自适应屏幕

    综上所述,实现“android自定义dialog嵌套listview自适应屏幕”涉及了Android的多个核心组件和概念,包括Dialog的自定义、ListView的适配、屏幕自适应策略以及UI测试。理解并掌握这些知识点,对于提升Android应用的...

    android自定义dialog样式

    这篇博客“android自定义dialog样式”深入探讨了如何通过源码和工具来实现这一目标。接下来,我们将详细讲解相关知识点。 1. **Dialog基础知识** Dialog是Android中的一个组件,它用于在用户界面中弹出一个临时...

    android自定义dialog下载

    在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的设计风格和功能需求创建具有独特外观和交互方式的对话框。本文将深入探讨如何在Android中实现自定义Dialog,包括基本概念、步骤和一些实用...

    android自定义dialog和Toast

    在Android开发中,自定义Dialog和Toast是提升用户体验和界面个性化的重要手段。Dialog通常用于向用户展示重要信息或需要用户做出决策的情况,而Toast则用于轻量级的通知,不打断用户的当前操作。以下是对如何自定义...

    很好android自定义dialog加载转圈等待,适合初学,透明+正常两种主题

    在Android开发中,自定义Dialog是一种常见的需求,用于提供一种用户交互的方式,通常用来显示一些临时的通知或进行一些简短的操作。在这个主题中,我们主要关注如何创建一个自定义的加载等待Dialog,它包括透明和...

Global site tag (gtag.js) - Google Analytics