·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> app软件开发 >> Android开发 >> Android实现蒙板效果

Android实现蒙板效果

作者:佚名      Android开发编辑:admin      更新时间:2022-07-23

本文实例为大家分享了Android实现蒙板效果的相关代码,供大家参考,具体内容如下

1、不保留标题栏蒙板的实现

效果:

原理:

1、弹窗时,设置背景窗体的透明度
2、取消弹窗时,恢复背景窗体的透明度

关键代码:

private void popupWindows(List<String> list){
  //产生背景变暗效果
  WindowManager.LayoutParams lp=getWindow().getAttributes();
  lp.alpha = 0.4f;
  getWindow().setAttributes(lp);

    ......省略号......

  mPopupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
      @Override
      public void onDismiss() {
        WindowManager.LayoutParams lp = getWindow().getAttributes();
        lp.alpha = 1f;
        getWindow().setAttributes(lp);
      }
    });

   ......省略号......

}

2、保留标题栏蒙板的实现

效果:

原理

1、根据需求,设置蒙板布局大小。
2、弹窗时,显示蒙板布局
2、取消弹窗时,隐藏蒙板布局

关键代码:

1、蒙板布局实现:

<!-- popup蒙板 -->
<LinearLayout
  android:id="@+id/ll_popup_hide"
  android:layout_width="match_parent"
  android:background="@color/hide_bg"
  android:orientation="vertical"
  android:layout_height="match_parent">
</LinearLayout>

<color name="hide_bg">#88323232</color>

2、代码处理

ll_popup_hide.setVisibility(View.VISIBLE); //显示蒙板
ll_popup_hide.setVisibility(View.INVISIBLE); //隐藏蒙板

以上就是本文的全部内容,希望对大家的学习有所帮助。