解决方案 »

  1.   

    我感觉你可以调试看看,在2.3环境下,看看这个popupWindow的属性,看正确的值是存在哪个属性里
      

  2.   

    不同版本,有的API是不同的,我觉得你可以尝试下1楼的方法。
      

  3.   

    我之前也遇到过这样的问题,你这里是用popupWindow.getContentView().getMeasuredHeight();popupwindow会出点问题,你刚才不是说你popupwindow里面放的是listview吗,你直接调用适配器返回的item项来获取每个item的高度再累加就行了。
      

  4.   

    要不试试fragment里面去写这个popupWindow.getContentView().measure(0, 0);
      

  5.   

    确实是这样,估计是popupwindow出了点问题,用你说的那样就可以解决了,是我自己思维太局限了 ,郁闷,谢谢了。
      

  6.   

    感觉是popupwindow的问题。2.3.3里面有些问题或者测量方式不同了。
      

  7.   

    你说在android2.3.3的就不行了,试试工程的AndroidManifest.xml文件中,加入supports-screens节点,具体的内容如下: <supports-screens
                android:smallScreens="true"
                android:normalScreens="true"
                android:largeScreens="true"
                android:resizeable="true"
                android:anyDensity="true" />
    然后再看看获取的值对不对。