Android之Activity **** has leaked window android.widget.PopupWindow$PopupDecorView that was originall
生活随笔
收集整理的這篇文章主要介紹了
Android之Activity **** has leaked window android.widget.PopupWindow$PopupDecorView that was originall
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 問題
在頁面實現了popupWindows,旋轉屏幕的時候提示下面的錯誤
Activity **** has leaked window android.widget.PopupWindow$PopupDecorView that was originally added here很明顯,窗口內存泄漏,因為旋轉屏幕的時候,依次會調用activity的onPause方法onStop方法onDestroy方法,當依附的activity銷毀時,但是這個時候popupWindows句柄還在就會有這個問題
2 初步測試
在onDestroy方法里面關閉popupWindows
@Overrideprotected void onDestroy() {super.onDestroy();if (popupWindow != null && popupWindow.isShowing()) {popupWindow.dismiss();popupWindow = null;}}然后測試依然還是出現上面的錯誤,這不日了狗嗎?
3 分析
Activity組件的應用程序窗口視圖對象和ViewRoot對象關聯通過窗口管理器(WindowManager)關聯
1) 分析Window類getWindowManager方法
public WindowManager getWindowManager() {return mWindowManager;總結
以上是生活随笔為你收集整理的Android之Activity **** has leaked window android.widget.PopupWindow$PopupDecorView that was originall的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android studio导入项目提示
- 下一篇: Android之解决点击PopupWin