Android中popupWindow无法背景透明度怎么解决

  介绍

这期内容当中小编将会给大家带来有关Android中popupWindow无法背景透明度怎么解决,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

有的时候当我们使用popwindow时将当前的活动当做视图传给其他片段使用时会导致我们设置背景变暗效果失效,导致这个原因的问题是因为我们传视图后当弹出popupwindw的时候已经不再当前的活动了,所以会显示无效

因此在设置的时候我们这样处理:

//设置空白的背景色
  WindowManager。.getAttributes .getWindow LayoutParams lp=getActivity () () ();
  lp。α=0.3度;
  .getWindow getActivity () () .setAttributes (lp);//用于PopupWindow的观点
  视图contentView=LayoutInflater.from (getContext ()) .inflate (R.layout.quote_info_pop, null,假);//创建PopupWindow对象,其中://第一个参数是用于PopupWindow中的观点,第二个参数是PopupWindow的宽度,//第三个参数是PopupWindow的高度,第四个参数指定PopupWindow能否获得焦点
  PopupWindow窗口=new PopupWindow (contentView getScreenWith ()/3 * 2 (int) getScreenHeight()/3 * 2,真的);//设置PopupWindow的背景
  window.setBackgroundDrawable (getresource () .getDrawable (R.drawable.white_shap));//设置PopupWindow是否能响应外部点击事件
  window.setOutsideTouchable(真正的);//设置PopupWindow是否能响应点击事件
  window.setTouchable(真正的);//显示PopupWindow,其中://第一个参数是PopupWindow的锚点,第二和第三个参数分别是PopupWindow相对锚点的x, y偏移
  listView=contentView.findViewById (R.id.list);
  quoteInfoAdapter=new quoteInfoAdapter (getActivity (), mList);
  listView.setAdapter (quoteInfoAdapter);
  窗口。showAsDropDown (v, getScreenWith ()/6 0);//或者也可以调用此方法显示PopupWindow,其中://第一个参数是PopupWindow的父视图,第二个参数是PopupWindow相对父视图的位置,//第三和第四个参数分别是PopupWindow相对父视图的x, y偏移//窗口。showAtLocation(父母,重力,x, y);//添加流行窗口关闭事件
  窗口。setOnDismissListener(新poponDismissListener ());
  还要加上监听,否则,流行消失时,透明度不会变回来
  
  类poponDismissListener实现PopupWindow。OnDismissListener {
  
  @Override
  公共空间>上述就是小编为大家分享的Android中popupWindow无法背景透明度怎么解决了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

Android中popupWindow无法背景透明度怎么解决