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

2016-02-19 08:56 43 1 收藏

下面图老师小编要向大家介绍下android 对话框弹出位置和透明度的设置具体实现方法,看起来复杂实则是简单的,掌握好技巧就OK,喜欢就赶紧收藏起来吧!

【 tulaoshi.com - 编程语言 】

例如,屏幕的上方或下方。要实现这种效果。就需要获得对话框的Window对象,获得这个Window对象有多种方法。最容易的就是直接通过AlertDialog类的getWindow方法来获得Window对象。
代码如下:

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,为了更清晰地显示透明的对话框和非透明的对话框。在本例中加了一个背景图像,将同时显示了两个对话框(一个是半透明的,另一是不透明的)。
代码如下:

// 显示透明的对话框  
    AlertDialog alertDialog = new AlertDialog.Builder(this).setMessage(  
            "透明对话框").setPositiveButton("确定", null).create();  
    Window window = alertDialog.getWindow();  
    WindowManager.LayoutParams lp = window.getAttributes();  
    // 设置透明度为0.3  
    lp.alpha = 0.6f;  
    window.setAttributes(lp);  
    alertDialog.show();  

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

window.setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,  
 WindowManager.LayoutParams.FLAG_BLUR_BEHIND); 

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

来源:https://www.tulaoshi.com/n/20160219/1588928.html

延伸阅读
问:程序是基于对话框的,我显示两个对话框,一个在另一个后面,下面是我的做法: CMyApp::InitInstance () { ... CMyDialog1 dlg1; m_hMainWnd = &dlg1; int result = dlg1.DoModal (); CMyDialog2 dlg2; result = dlg2.DoModal (); ... } 在上面的代码中,首先一个对话框得到了适当地调用...
图图桌面透明度设置方式介绍 图图桌面美化软件的设置透明透方式: 右键点击图图桌面面板的边框,会显示功能菜单,选择不透明度。(如图) 选择20%的不透明度效果图如下         注 :更多精彩教程请关注图老师电脑教程栏目
用户在图片框中选择图片时,希望预先对图片的轮廓及大小有初步了解,但是VB的通用对话框没有预览的功能,为此需要定制一个自定义对话框。我们可以通过image控件加入窗体中来实现其功能。 程序示例: 程序功能说明: 在窗体的file1中选择一个图片文件,点选“预览”复选框,image控件就显示相应的图片,label1就显示该图片的大小。 ...
不规则对话框的又一实现 作者:河北唐山 吕建欣 下载本文示例代码 代码运行效果图如下: 此不规则对话框的实现应用了一个重要的位图对话框类——CBitmapDialog ,通过灵活运用,可以实现任意形状的对话框。 一、CBitmapDialog ...
获取静态控件文本的方法:GetDlgItem函数获得对话框中控件的指针,然后调用GetWindowText获得文本。注意:静态控件的属性必须将Notify选为可能。同理:SetWindowText可以指定文本。 获取编辑框内容:GetDlgItem(ID)-GetWindowText(); 字符内容转换为数值:atoi()把字符串转换为数值;同理:数字到字符串itoa(); GetDlgItemText(ID)可以完成...

经验教程

133

收藏

46
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部