android - popupwindow的isShowing() 始终为false
阿神
阿神 2017-04-17 15:16:21
0
2
649

点击某个按钮出现popupwindow,点击监听的代码如下:

if (wPopupWindow.isShowing()){ wPopupWindow.dismiss(); }else{ wPopupWindow.showAsDropDown(layoutFiltrate,0,0); }

我输出日志,Popuowindow的isShowing()始终显示为false。麻烦各位多多指教。

阿神
阿神

闭关修行中......

reply all (2)
阿神

你不应该是用PopupWindow的isShowing()方法作为展示和隐藏的开关,因为你如果一直没有调用showAsDropDown方法的话,isShowing()返回值一定是false。可以自定义一个临时boolean作为展示的开关,如boolean isPopShowing=false;然后通过isPopShowing=!isPopShowing的方法对显示状态进行重置

    小葫芦

    要么是你输出日志的地方不对,要么就是你wPopupWindow.showAsDropDown方法根本没调用过。

    /** * 

    Indicate whether this popup window is showing on screen.

    * * @return true if the popup is showing, false otherwise */ public boolean isShowing() { return mIsShowing; }
    public void showAsDropDown(View anchor, int xoff, int yoff, int gravity) { 。。。 mIsShowing = true; 。。。
      Latest Downloads
      More>
      Web Effects
      Website Source Code
      Website Materials
      Front End Template
      About us Disclaimer Sitemap
      php.cn:Public welfare online PHP training,Help PHP learners grow quickly!