`
long_yu2
  • 浏览: 333978 次
社区版块
存档分类
最新评论

android 对话框弹出位置和透明度的设置

阅读更多
在android中我们经常会用AlertDialog来显示对话框。通过这个对话框是显示在屏幕中心的。但在某些程序中,要求对话框可以显示在不同的位置。例如,屏幕的上方或下方。要实现这种效果。就需要获得对话框的Window对象,获得这个Window对象有多种方法。最容易的就是直接通过AlertDialog类的getWindow方法来获得Window对象。
[java] view plaincopy
AlertDialog dialog = new AlertDialog.Builder(this).setTitle("title") 
                     .setMessage("message").create(); 
Window window = alertDialog.getWindow();    
window.setGravity(Gravity.TOP);   //window.setGravity(Gravity.BOTTOM); 
alertDialog.show();      
                

透明的对话框
默认显示的对话框是不透明的,但我们可以通过设置对话框的alpha值将其变成透明或半透明效果。我们都知道。颜色由R(红)、G(绿)、B(蓝)组成。除此之外,还会有一个A(透明度,Alpha)来描述颜色。在颜色的描述中,如果该值为0表示完全透明,如果该值为255,表示不透明。
通过设置Windows的alpha属性也可以设置对话框的透明度。但alpha的取值范围是从0到1.0。如果该属性值为0,表示完全透明,如果该值为1.0,表示不透明(也就是正常显示的对话框)。下面的代码通过将alpha的值设为0.3,为了更清晰地显示透明的对话框和非透明的对话框。在本例中加了一个背景图像,将同时显示了两个对话框(一个是半透明的,另一是不透明的)。
[java] view plaincopy
// 显示透明的对话框    
4.    AlertDialog alertDialog = new AlertDialog.Builder(this).setMessage(    
5.            "透明对话框").setPositiveButton("确定", null).create();    
6.    Window window = alertDialog.getWindow();    
7.    WindowManager.LayoutParams lp = window.getAttributes();    
8.    // 设置透明度为0.3    
9.    lp.alpha = 0.6f;    
10.    window.setAttributes(lp);    
11.    alertDialog.show();    



我们在使用某些应用时会发现当弹出对话框或某些模式窗口时,后面的内容会变得模糊或不清楚。实际上,这些效果也很容易在OPhone中实现。为了实现这个功能,我们只需要设置Wndow对象的两个标志即可,代码如下:
window.setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,  
WindowManager.LayoutParams.FLAG_BLUR_BEHIND); 
分享到:
评论

相关推荐

    android 对话框弹出位置和透明度的设置具体实现方法

    另外,有时候我们会注意到,当对话框弹出时,背景内容会变得模糊,这样的效果在Android中可以通过设置Window的一些标志来实现。例如,使用`FLAG_BLUR_BEHIND`可以实现背景模糊: ```java window.setFlags...

    Android 半透明对话框Demo源码

    Dialog是Android SDK提供的一个基础组件,用于在当前Activity之上显示一个弹出式窗口,通常用来显示警告、确认或请求用户输入等信息。在创建半透明对话框时,我们需要自定义Dialog的主题以达到透明度效果。 1. **...

    android自定义透明对话框,透明提示框,自定义Dialog

    在Android中,`Dialog`类是系统提供的对话框组件,它可以从Activity或Fragment中弹出。要创建一个基本的`Dialog`,你需要继承`AppCompatDialog`或者使用`AlertDialog.Builder`来构建。然而,为了实现透明效果,我们...

    半透明对话框

    此外,还可以通过调整`windowSoftInputMode`属性来控制软键盘是否影响对话框的大小和位置,或者使用`DialogFragment`替代传统的Dialog,以便更好地管理对话框的生命周期。 总的来说,实现Android半透明对话框涉及到...

    Android 仿IOS对话框

    我们可以通过自定义主题,设置对话框的背景颜色和透明度,例如使用`android:backgroundDimAmount`属性控制背景的暗化程度。 2. **布局设计**:iOS对话框的边框通常是圆角的,我们可以在XML布局文件中使用`android:...

    Android底部对话框

    因此,设计时应考虑对话框的大小、位置、透明度以及动画效果,使其既美观又实用,不打断用户的操作流程。 通过这个"Android例子源码IOS7风格的底部对话框",开发者不仅可以学习如何创建自定义的底部对话框,还能...

    Android 对话框动画.zip

    "Android 对话框动画.zip" 文件包包含了实现各种对话框弹出动画特效的源码和示例,主要涉及以下几个方面: 1. **自定义对话框样式**:Android系统提供了基本的对话框样式,但开发者可以创建自定义布局以满足特定...

    Android代码-半透明对话框Demo源码.zip

    在Android中,对话框(Dialog)是一种轻量级的弹出式窗口,用于向用户展示临时信息或进行简单的交互。半透明对话框则是对话框的一种特殊形式,它的背景不是纯黑色或白色,而是带有一定程度的透明度,使得用户可以...

    Android UI设计--半透明效果对话框

    4. **调用和使用**:在需要显示半透明对话框的地方,只需要传入上下文和已准备好的布局,即可弹出对话框: ```java View dialogView = LayoutInflater.from(context).inflate(R.layout.dialog_popup, null); ...

    Android:动画实现精美的弹出框(仿易信)

    在Android开发中,创建引人注目的用户界面是至关重要的,而弹出框作为与用户交互的一种常见方式,其设计和实现方式直接影响到用户体验。本篇文章将深入探讨如何使用动画来实现一个精美的弹出框,类似易信应用中的...

    android 自定义单选、多选对话框及popwindow窗口实例源码.zip

    PopWindow是Android中一种轻量级的窗口组件,常用于弹出式菜单、提示等场景。创建PopWindow需要以下步骤: 1. 创建布局资源文件,定义PopWindow的显示内容。 2. 使用`LayoutInflater`加载布局。 3. 创建`...

    在对话框中点击按钮弹出另外一个对话框

    在软件开发中,特别是在图形用户界面(GUI)的设计中,"在对话框中点击按钮弹出另外一个对话框" 是一种常见的交互方式。这种设计允许用户通过执行特定操作(如点击按钮)来获取更多信息或者进行更复杂的操作。对话框...

    PopupWindow 底部弹出透明度

    总之,PopupWindow 在 Android 应用开发中提供了丰富的自定义选项,包括调整其底部弹出的透明度。通过设置自定义背景资源、控制 `alpha` 值以及应用动画,你可以实现各种定制化的弹出效果,提升用户体验。记得在实际...

    android高仿IOS对话框

    我们需要重写`onCreateDialog`方法,在其中设置自定义布局,并配置对话框的其他属性,如宽度、高度、背景透明度等。 3. **事件监听**: 在自定义布局中,为每个按钮添加点击事件监听器。在`DialogFragment`内,...

    Android使用Activity实现简单的可输入对话框

    3. 对话框出现时,EditText自动获取焦点并弹出软键盘。 4. 当软键盘弹出时,对话框会被顶起,以便用户查看和编辑输入内容。 传统的Dialog可能难以满足上述第四点,因此我们可以选择使用Activity来模拟对话框效果。...

    AlertDialog对话框 实现遮罩层

    在Android中,我们可以使用`View`或`LinearLayout`等布局来创建这个遮罩层,并通过设置合适的背景颜色和透明度来达到预期效果。 要实现带有遮罩层的`AlertDialog`,我们首先需要自定义一个布局文件,这个布局包含...

    全屏显示对话框

    7. **调整尺寸和透明度**:如果需要调整Dialog的大小或透明度,可以通过修改布局参数或者自定义Dialog子类重写onMeasure()方法来实现。 8. **事件监听**:对于Dialog中的按钮或其他交互元素,可以添加...

    自定义单选,多选对话框(android)

    2. **尺寸和位置**:如果使用`PopupWindow`,可以通过`setWidth`和`setHeight`方法指定大小,以及`showAtLocation`方法控制弹出位置。 3. **取消和确认按钮**:添加按钮并设置相应的点击事件,处理用户确认或取消...

    透明对话框

    通过设置特定的透明度级别,可以使窗口的部分或全部变得透明。 2. WPF:Windows Presentation Foundation(WPF)框架提供了更高级别的透明度支持。通过调整UIElement的OpacityMask或Opacity属性,可以实现复杂的透明...

Global site tag (gtag.js) - Google Analytics