软件编程
位置:首页>> 软件编程>> Android编程>> Android PopupWindow 点击外面取消实现代码

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

作者:junjie  发布时间:2022-02-04 20:52:05 

标签:Android,PopupWindow,取消

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);// 显示再指定控件的下面
   }

}
0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com