程序挂死日志:
01-01 01:18:46.578 533-11416/system_process W/WindowManager: Failed looking up window
java.lang.IllegalArgumentException: Requested window null does not exist
at com.android.server.wm.WindowManagerService.windowForClientLocked(WindowManagerService.java:8718)
at com.android.server.wm.WindowManagerService.addWindow(WindowManagerService.java:2390)
at com.android.server.wm.Session.addToDisplay(Session.java:168)
at android.view.IWindowSession$Stub.onTransact(IWindowSession.java:124)
at com.android.server.wm.Session.onTransact(Session.java:130)
at android.os.Binder.execTransact(Binder.java:453)
01-01 01:18:46.578 533-11416/system_process W/WindowManager: Attempted to add window with token that is not a window: null. Aborting.
挂死位置:
this.showAsDropDown(mParent);
应用场景:
一个继承于PopupWindow的类,里面有个ListView,mParent是一个EditText。传入和一个基于MvpBasePresenter的Presenter对象,运行时问题出现。
解决:
不传入MvpBasePresenter对象,将PopupWindow实现类作为成员变量,通过读取成员变量的成员变量监听PopupWindow实现类内部的选择、点击等状态。