如果给popupwindow设置了focus(true),并监听了一些交互处理,就有可能造成空指针异常。
原因是3.0以下版本的系统原因(高版本不会出现)。退出popup所在的activity后,如果它的引用没被销毁,系统依然会给它分发交互事件,但是由于它的内容已经不可见,对象已经回收,所以会造成空指针异常。
解决方法:创建PopupWindow 的时候不调用 setFocusable(true),在showAtLocation后在调用setFocusable(true);并且在 dismiss的时候 调用setFocusable(false)
详细信息:http://www.cnblogs.com/xinye/p/3642678.html