关于android.view.WindowLeaked异常的解决方案
2016-01-12 13:47
429 查看
转自:http://www.cnblogs.com/error404/archive/2011/11/21/2256953.html
无意冒犯版权,转载仅供方便查阅。
Android.view.WindowLeaked按字面了解,Window
Leaked大概就是说一个窗体泄漏了,也就是我们常说的内存泄漏,为什么窗体会泄漏呢?
产生原因:
我们知道Android的每一个Activity都有个WindowManager窗体管理器,同样,构建在某个Activity之上的对话框、PopupWindow也有相应的WindowManager窗体管理器。因为对话框、PopupWindown不能脱离Activity而单独存在着,所以当某个Dialog或者某个PopupWindow正在显示的时候我们去finish()了承载该Dialog(或PopupWindow)的Activity时,就会抛Window
Leaked异常了,因为这个Dialog(或PopupWindow)的WindowManager已经没有谁可以附属了,所以它的窗体管理器已经泄漏了。
解决方法:
关闭(finish)某个Activity前,要确保附属在上面的Dialog或PopupWindow已经关闭(dismiss)了。
无意冒犯版权,转载仅供方便查阅。
Android.view.WindowLeaked按字面了解,Window
Leaked大概就是说一个窗体泄漏了,也就是我们常说的内存泄漏,为什么窗体会泄漏呢?
产生原因:
我们知道Android的每一个Activity都有个WindowManager窗体管理器,同样,构建在某个Activity之上的对话框、PopupWindow也有相应的WindowManager窗体管理器。因为对话框、PopupWindown不能脱离Activity而单独存在着,所以当某个Dialog或者某个PopupWindow正在显示的时候我们去finish()了承载该Dialog(或PopupWindow)的Activity时,就会抛Window
Leaked异常了,因为这个Dialog(或PopupWindow)的WindowManager已经没有谁可以附属了,所以它的窗体管理器已经泄漏了。
解决方法:
关闭(finish)某个Activity前,要确保附属在上面的Dialog或PopupWindow已经关闭(dismiss)了。
相关文章推荐
- Android实训案例(二)——Android下的CMD命令之关机重启以及重启recovery
- Android实训案例(二)——Android下的CMD命令之关机重启以及重启recovery
- Android中的so挂钩(hook)之替换Got表
- android wearable-Adding Voice Capabilities
- android studio 导入项目Gradle版本不同解决方法
- Android --- Zygote和System进程启动过程简要分析
- android serviceManager使用
- Android 运行到真机时 Error Tpye 3 ,{ } does not exist
- Android 访问WebService
- android 可移动悬浮框的实现
- Android Serializable和Parcelable的区别和用法
- 在Android中来实现视频的播放
- Android系统自带主题样式(android:theme),Android Dialog 系统样式
- android inflater 用法
- 仿QQ主界面Fragment简单应用
- how to use BaiduMap in android studio under ubuntu
- Android 中 SQLite 的应用总结
- Android 随笔杂记
- android 存储结构与存储方法
- android studio logcat异常调试信息解析错误方法