我通过扩展创建了一个简单的自定义布局ViewGroup
。我创建 aButton
和 a PopupMenu
on init()
。如果按钮被按下,PopupMenu
则会显示。问题是,当PopupMenu
显示时,如果我旋转设备,我会收到以下错误消息。
E/WindowManager: android.view.WindowLeaked: Activity has leaked window android.widget.PopupWindow$PopupDecorView{c44e7da VE..... ......ID 0,0-392,960} 最初添加在这里
我发现了一个类似的问题(PopupMenu PopupWindow$PopupViewContainer 泄漏),解决方案是调用dismiss()
. PopupMenu
onStop()
但是,由于这不是一个活动,而是一个ViewGroup
,所以我没有onStop()
. 所以,我试图找到一个类似名称的事件,并找到onDetachedFromWindow()
. 我打电话dismiss()
进来onDetachedFromWindow()
。
onDetachedFromWindow()
确实在屏幕旋转之前被调用,但我仍然收到 WindowLeaked 错误消息。
我怎么解决这个问题?实际上,应用程序似乎工作正常,我得到的只是日志中的错误消息。这个错误可以忽略吗?