您的位置:首页 > 运维架构

Popupwindow弹框后,背景变暗实现方法

2018-01-16 11:55 309 查看
背景

方法

代码中的使用

背景变暗效果图示
A little bit of progress every dayCome on

背景

项目中使用到了popupwindow,现在没有让popupwindow占满手机屏幕,而是从手机底部弹出,popupwindow的高度是手机屏幕的0.618(黄金比例)。基于这个前提下,当popupwindow创建完成并显示后,将popupwindow的背景变暗;当popupwindow消失时,恢复背景亮度。这样做可以提高用户体验。

方法

/**
* 设置窗口的背景透明度
* @param f 0.0-1.0
*/
private  void bgAlpha(float f){
WindowManager.LayoutParams layoutParams = getActivity().getWindow().getAttributes();
layoutParams.alpha = f;
getActivity().getWindow().setAttributes(layoutParams);
}


上面的代码实现思路就是:设置popupwindow所在窗口的背景透明度,从而实现背景变暗的效果。

代码中的使用

给出我在项目中的使用该方法的图示:



简单说明一下,就是说在弹框显示后,调用bgAlpha(0.618f)方法使背景变暗,然后设置了popupwindow的onDismissListener监听,监听popupwindow消失时要执行的操作。可以实现当popupwindow消失时,恢复背景的亮度。

背景变暗效果图示



=============================================================================================

A little bit of progress every day!Come on!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息