popupwindow showAsDropDown 无效解决方法
        【摘要】 
                    今天运行一个很久之前做的项目的时候,发现界面变成了这个样子,就是一个普通的popwindow 
 
然后用了一下低版本手机测试是显示正常的,搜索相关资料,发现是Android7.0 及以上手机有这个问题 
原来的代码: 
		mPopupWindow.showAsDropDown(view); 
   view是显示...
    
    
    
    今天运行一个很久之前做的项目的时候,发现界面变成了这个样子,就是一个普通的popwindow


然后用了一下低版本手机测试是显示正常的,搜索相关资料,发现是Android7.0 及以上手机有这个问题
原来的代码:
		mPopupWindow.showAsDropDown(view);
 
view是显示到哪个控件下面就放哪个view,不多解释。
现在的代码:
PopWindowUtil.showAsDropDown(mPopupWindow,view,0,0);
 
  
   - 
    
     
    
    
     
      package com.jky.mobilebzt.util;
     
    
 
   - 
    
     
    
    
      
     
    
 
   - 
    
     
    
    
     
      import android.graphics.Rect;
     
    
 
   - 
    
     
    
    
     
      import android.os.Build;
     
    
 
   - 
    
     
    
    
     
      import android.view.View;
     
    
 
   - 
    
     
    
    
     
      import android.widget.PopupWindow;
     
    
 
   - 
    
     
    
    
      
     
    
 
   - 
    
     
    
    
     
      public class PopWindowUtil {
     
    
 
   - 
    
     
    
    
      
     
    
 
   - 
    
     
    
    
         public static void showAsDropDown(final PopupWindow pw, final View anchor, final int xoff, final int yoff) {
     
    
 
   - 
    
     
    
    
             if (Build.VERSION.SDK_INT >= 24) {
     
    
 
   - 
    
     
    
    
                 Rect visibleFrame = new Rect();
     
    
 
   - 
    
     
    
    
     
                  anchor.getGlobalVisibleRect(visibleFrame);
     
    
 
   - 
    
     
    
    
                 int height = anchor.getResources().getDisplayMetrics().heightPixels - visibleFrame.bottom;
     
    
 
   - 
    
     
    
    
     
                  pw.setHeight(height);
     
    
 
   - 
    
     
    
    
     
                  pw.showAsDropDown(anchor, xoff, yoff);
     
    
 
   - 
    
     
    
    
     
              } else {
     
    
 
   - 
    
     
    
    
     
                  pw.showAsDropDown(anchor, xoff, yoff);
     
    
 
   - 
    
     
    
    
     
              }
     
    
 
   - 
    
     
    
    
     
          }
     
    
 
   - 
    
     
    
    
     
      }
     
    
 
  
 
现在的效果:


很普通的一个问题,但是项目时间长了没发现就很尴尬。好了,很简单,就不多废话了。
希望对大家有所帮助。欢迎各位小伙伴加入我的qq群:开发一群:454430053 (付费)开发二群:537532956 (付费)开发三群:812695329(免费)这里已经有很多小伙伴在等你了,快来加入我们吧!
文章来源: wukong.blog.csdn.net,作者:再见孙悟空_,版权归原作者所有,如需转载,请联系作者。
原文链接:wukong.blog.csdn.net/article/details/110135959
        【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
            cloudbbs@huaweicloud.com
        
        
        
        
        - 点赞
 - 收藏
 - 关注作者
 
            
           
评论(0)