当前位置:编程学习 > 网站相关 >>

控制对话框的关闭

对话框的任何一个按钮,只要点击,默认状态下均会关闭对话框。对话框的关闭是由AlertDialog.mShowing这个变量控制的,只要在单击按钮的过程中修改这个变量的值就可以了。
try{
Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing");
field.setAccessible(true);
//将mShowing变量设置 为false,好让系统认为这个dialog已经关闭
field.set(dialog,false);
}catch (Exception e){}

改变对话框的透明度
WindowManager.LayoutParams lp=dialog.getWindow().getAttributes();
                lp.alpha=1.0f;
                dialog.getWindow().setAttributes(lp);
alpha在0.0f到1.0f之间。1.0完全不透明,0.0f完全透明
设置黑暗度
dialog.setContentView(R.layout.dialog);
                WindowManager.LayoutParams lp=dialog.getWindow().getAttributes();
                lp.dimAmount=1.0f;
                dialog.getWindow().setAttributes(lp);
                dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
dimAmount在0.0f和1.0f之间,0.0f完全不暗,1.0f全暗
还有个FLAG用途设置背景模糊,dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
改变对话框的位置 www.zzzyk.com
Window window = alertDialog.getWindow();    
window.setGravity(Gravity.TOP);   //window.setGravity(Gravity.BOTTOM);  

补充:综合编程 , 其他综合 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,