PopupWindow实现dialog效果背景变色

原创 2015年12月23日 17:05:11
public class PopupWindowUtil {
	public static PopupWindow getPopupWindowFromBottom(final Context context,
			View view, int color) {
		PopupWindow popupWindow = new PopupWindow(view);
		popupWindow.setBackgroundDrawable(new ColorDrawable(color));// 没有此句点击外部不会消失
		popupWindow.setOutsideTouchable(true);
		popupWindow.setFocusable(true);
		popupWindow.setAnimationStyle(R.style.FromBottomPopupAnimation);
		popupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {

			@Override
			public void onDismiss() {
				StringUtil.backgroundAlpha(context, 1f,false);
			}

		});

		return popupWindow;
	}

	public static PopupWindow getPopupWindow(Context context, View view,
			int color) {
		PopupWindow popupWindow = new PopupWindow(view);
		popupWindow.setBackgroundDrawable(new ColorDrawable(color));// 没有此句点击外部不会消失
		popupWindow.setOutsideTouchable(true);
		popupWindow.setFocusable(true);
		// popupWindow.setAnimationStyle(R.style.PopupAnimation);
		return popupWindow;
	}

	public static void dissPw(PopupWindow pw) {
		if (pw != null && pw.isShowing()) {
			pw.dismiss();
		}
	}

}


	public static void backgroundAlpha(Context context, float bgAlpha,boolean isDilaog) {
		WindowManager.LayoutParams lp = ((Activity) context).getWindow()
				.getAttributes();
if(isDilaog)
		((Activity) context).getWindow().addFlags(
				WindowManager.LayoutParams.FLAG_DIM_BEHIND);
		lp.alpha = bgAlpha; // 0.0-1.0
		((Activity) context).getWindow().setAttributes(lp);
	}



	pw = PopupWindowUtil.getPopupWindowFromBottom(this, view,
				android.R.color.transparent);
		pw.setWidth(LayoutParams.MATCH_PARENT);
		pw.setHeight(LayoutParams.WRAP_CONTENT);



	//设置背景半透明,并且弹出pw
      StringUtil.backgroundAlpha(ctx, 0.5f,false);
      pw.showAtLocation(view, Gravity.BOTTOM, 0, 0);

模式对话框PopupWindow实现Dialog的功能

Popupwindow作为与Dialog有同等功能的对话框,Popupwindow现在完全实现Dialog的功能,背景变灰...
  • dreamInTheWorld
  • dreamInTheWorld
  • 2014-11-17 13:45:05
  • 2418

Android 毛玻璃效果对话框

一个popwindow,在弹出的时候背景是原界面的截图加高斯模糊效果 先给出popwindow的布局文件 ...
  • lvshaorong
  • lvshaorong
  • 2015-12-24 08:56:45
  • 2577

笔记78--Popupwindow实现类似AlertDialog半透明效果

Dialog和Popupwindow区别详见:笔记41
  • mwj_88
  • mwj_88
  • 2014-09-19 00:06:40
  • 2412

自定义dialog实现PopupWindow的效果

自定义dialog加上动画效果,可以实现自定义的布局从上面弹出或者从下往上弹出,自定义自己的dialog继承于dialog,在自定义的dialog上面用自己的布局(根据需要的效果自定义布局就行),然后...
  • qq_26514147
  • qq_26514147
  • 2016-03-26 18:02:00
  • 264

Android PopupWindow弹出窗口的完美实现(实现弹出背景变暗效果)

最近尝试使用popupWindow实现背景变暗效果,自己优化了一下,并封装成一个可以调用的方法,默认实现弹出窗口显示在传入view的下方,以下代码有详细注释,有问题可以留言展示效果如下: 代码展示布...
  • qq_33416180
  • qq_33416180
  • 2016-05-07 11:31:18
  • 8559

自定义PopupWindow并且设置背景色变暗的2种方法(蒙层效果)

PopupWindow自定义视图,让弹出后背景变暗效果实现可以2种方法:! 1:通过改变窗体的透明度来分别对待弹出与隐藏时 2:在主布局中最外层加一个蒙层界面...
  • Scorpio_gao
  • Scorpio_gao
  • 2016-06-08 11:14:22
  • 3110

android popupwindow 底部灰色背景

  • 2014年09月26日 11:52
  • 2.58MB
  • 下载

Android之自定义AlertDialog和PopupWindow实现(仿微信Dialog)

我们知道,在很多时候,我们都不用Android内置的一些控件,而是自己自定义一些自己想要的控件,这样显得界面更美观。 今天主要是讲自定义AlertDialog的使用,在很多需求中,我们往往需要...
  • u010687392
  • u010687392
  • 2015-02-27 17:39:14
  • 7055

【关于适配】PopupWindow弹出时背景不变暗 或者 PopupWindow背景一闪一闪问题处理

前言:  项目开发中遇到关于PopupWindow适配性的问题,特别是在华为手机上显示就会出现类似的情况。 下面这段PopupWindow弹出时背景变暗效果的代码在网上随处可见: private v...
  • qq263229365
  • qq263229365
  • 2017-08-09 10:53:33
  • 478

实现点击在组件下方弹出单选框。并且选中哪个哪个后方显示对勾。文字变色。同时展示Popupwindow实现和遮罩效果

  • 2017年02月25日 11:20
  • 174KB
  • 下载
收藏助手
不良信息举报
您举报文章:PopupWindow实现dialog效果背景变色
举报原因:
原因补充:

(最多只允许输入30个字)