亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android 中 android.view.WindowLeaked的解決辦法

 更新時(shí)間:2017年05月14日 11:10:12   作者:ganchuanpu  
這篇文章主要介紹了Android 中 android.view.WindowLeaked的解決辦法的相關(guān)資料,需要的朋友可以參考下

Android 中 android.view.WindowLeaked的解決辦法

按字面了解,Window Leaked大概就是說(shuō)一個(gè)窗體泄漏了,也就是我們常說(shuō)的內(nèi)存泄漏,為什么窗體會(huì)泄漏呢?

產(chǎn)生原因:

我們知道Android的每一個(gè)Activity都有個(gè)WindowManager窗體管理器,同樣,構(gòu)建在某個(gè)Activity之上的對(duì)話框、PopupWindow也有相應(yīng)的WindowManager窗體管理器。因?yàn)閷?duì)話框、PopupWindown不能脫離Activity而單獨(dú)存在著,所以當(dāng)某個(gè)Dialog或者某個(gè)PopupWindow正在顯示的時(shí)候我們?nèi)inish()了承載該Dialog(或PopupWindow)的Activity時(shí),就會(huì)拋Window Leaked異常了,因?yàn)檫@個(gè)Dialog(或PopupWindow)的WindowManager已經(jīng)沒(méi)有誰(shuí)可以附屬了,所以它的窗體管理器已經(jīng)泄漏了。

解決方法:

關(guān)閉(finish)某個(gè)Activity前,要確保附屬在上面的Dialog或PopupWindow已經(jīng)關(guān)閉(dismiss)了。

比如:

@Override
  protected void onDestroy() {
    super.onDestroy();
    if (mDialog != null) {
      mDialog.dismiss();
    }
  }

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論