首页 > 系统 > Android > 正文

Android PopupWindow 点击外面取消实现代码

2020-04-11 11:34:51
字体:
来源:转载
供稿:网友
private void showPopupView()  {    if (mPopupWindow == null)    {      View view = getLayoutInflater().inflate(R.layout.newest_layout, null);      mPopupWindow = new PopupWindow(view, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);      mPopupWindow.setFocusable(true);//需要设置为ture,表示可以聚焦        //需要设置背景,用物理键返回的时候			        mPopupWindow.setBackgroundDrawable(new BitmapDrawable(getResources()));			        mPopupWindow.setOutsideTouchable(true);      view.setOnTouchListener(new OnTouchListener()// 需要设置,点击之后取消popupview,即使点击外面,也可以捕获事件      {        public boolean onTouch(View v, MotionEvent event)        {          if (mPopupWindow.isShowing())          {            Trace.Log("-------------------onTouch------------");            mPopupWindow.dismiss();          }          return false;        }      });    }    if (mPopupWindow.isShowing())    {      mPopupWindow.dismiss();    }    else    {      View parent = findViewById(R.id.newest);      mPopupWindow.showAsDropDown(parent);// 显示再指定控件的下面    }  }

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表