zoukankan      html  css  js  c++  java
  • 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);// 显示再指定控件的下面
            }
    
        }
  • 相关阅读:
    迪杰斯特拉 优先队列 模板
    UVa 12186 树形dp
    树形dp总结
    codeforces 746C 模拟
    2017西安网络赛 F
    北京师范大学校赛C
    UVA 1584 字符串
    状压dp入门第一题 poj3254
    2017ICPC/广西邀请赛1005(水)HDU6186
    2017ICPC/广西邀请赛1001(水)HDU6181
  • 原文地址:https://www.cnblogs.com/lipeil/p/2816283.html
Copyright © 2011-2022 走看看