zoukankan      html  css  js  c++  java
  • PopupWindow的dismiss

    写了个PopupWindow,设置它为focusable,

                       mPopupWindow = new PopupWindow(layout, 100, 100);
                        mPopupWindow.setFocusable(true);
                        mPopupWindow.setTouchable(true);
                        mPopupWindow.showAtLocation(mLinearLayoutEdit, Gravity.CENTER, 0, 0);

    结果包含它的Activity不响应除HOME键外的任何消息了,PopupWindow也不消失。如果不设置它为focusable,则它里面包含的listview不响应onItemClickListener了。

    怎么既让PopupWindow响应消息又可以focus咧,给它加上背景就行了,如下:

                        mPopupWindow = new PopupWindow(layout, 100, 100);
                        mPopupWindow.setFocusable(true);
                        mPopupWindow.setTouchable(true);
                        BitmapDrawable bitmap = new BitmapDrawable();//add back
                        mPopupWindow.setBackgroundDrawable(bitmap);//add back
                        mPopupWindow.showAtLocation(mLinearLayoutEdit, Gravity.CENTER, 0, 0);

    这样,点击除PopupWindow外的区域和back键都可以使PopupWindow给dismiss掉。

    虽然问题解决了,不过我就纳闷了,为什么背景会有影响咧。

  • 相关阅读:
    计算最大公因数
    最大子序列和问题
    C++三大函数:析构函数、复制构造函数和operator=
    C++函数返回值传递
    C++动态内存分配
    Halcon Assistants
    网格细分算法
    HDevelop Guide
    MeshLab
    point cloud registration
  • 原文地址:https://www.cnblogs.com/jayceli/p/2428634.html
Copyright © 2011-2022 走看看