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);

相关文章推荐

[android]so easy实现根据viewpager、edittext、时间使背景动态渐变色效果~

一、前言 *本文是紧接着上文(奇思妙想之实用类ArgbEvaluator)写的。 在这简单回顾下,上文主要提到了一个叫做ArgbEvaluator的一个类,通过他可以灵活实现一些渐变色效果,虽然好...

自定义dialog实现PopupWindow的效果

自定义dialog加上动画效果,可以实现自定义的布局从上面弹出或者从下往上弹出,自定义自己的dialog继承于dialog,在自定义的dialog上面用自己的布局(根据需要的效果自定义布局就行),然后...

PopupWindow弹出框与背景变暗的实现(附带动画效果)

效果图: 1,定义popupWindow 布局 2,在mainactivity.xml 中设置 用来显示 popupwindow的 布局 3,MainActivity当中 设置pop...

底部弹出PopupWindow并且背景变为半透明效果

先来看看运行效果图    [方式一]实现从底部弹出PopupWindow 原理:定义一个高度为wrap_content的PopupWindow布局文件,根据屏幕底部的位置显示在B...

Android 动画效果弹出PopupWindow,同时屏幕背景变暗

最近做项目的时候,希望弹出一个PopupWindow,但是效果并不美观,所以自己写了个效果,动画弹出PopupWindow,是飞入/飞出,加上渐变的效果。在弹出PopupWindow的同时,改变屏幕背...

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

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

CSS+javascript 实现单击背景变色

  • 2012年02月22日 09:40
  • 961B
  • 下载

仿IOS底部选项效果--底部弹出PopupWindow,背景变为半透明效果

底部弹出PopupWindow,背景变为半透明效果,采用两种方式实现 转载请注明出处:http://blog.csdn.net/LANG791534167/article/details/4898...

CSS+DIV实现鼠标经过背景变色

CSS+DIV实现鼠标经过背景变色 asp.net(49) CSS(10) CSS+DIV实现鼠标经过背景变色 供稿:润之康   时间:2009-2-11 22:32:43     ...
  • csnewdn
  • csnewdn
  • 2017年01月17日 18:55
  • 118
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PopupWindow实现dialog效果背景变色
举报原因:
原因补充:

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