android.view.WindowLeaked的解决方法
16lz
2021-01-26
Android.view.WindowLeaked一般会发生在Activity中Dialog的显示。
android的dialog创建的时候会传入一个参数this,就是当前的activity,dialog必须在Activity销毁之前放掉,否则就会报windowleaked的错误。
分析这个原因是:
Dialog是基于Activity而创建的:new ProgressDialog(this);this 就是Activity。Activtity先finish,那Dialog就没得依附了,所以就会报android.view.WindowLeaked。
在activity销毁之前把dialog dismiss就可以解决这种情况。
1.主动销毁 在finish之前把dialog给dismiss掉就行了。
2.被动销毁 在activity的ondestroy中,或者根据自己项目具体情况,在activity生命周期覆写函数中把dialog dismiss掉。
更多相关文章
- Android之创建自定义属性
- android camera 拍照加图片处理
- android 存储文件到sdcard下
- Android(安卓)性能最佳实践 1
- android学习之模拟器SD卡的创建(tools)
- android 右上角menu创建设置
- WebRTC之Android客户端
- android alertdialog
- 手势滑动销毁Activity