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掉。

更多相关文章

  1. Android之创建自定义属性
  2. android camera 拍照加图片处理
  3. android 存储文件到sdcard下
  4. Android(安卓)性能最佳实践 1
  5. android学习之模拟器SD卡的创建(tools)
  6. android 右上角menu创建设置
  7. WebRTC之Android客户端
  8. android alertdialog
  9. 手势滑动销毁Activity

随机推荐

  1. android开发实战之做手机号和邮编查询小
  2. android保存数据的四种方法
  3. Android(安卓)API 实验记录 (二)
  4. 日本一恶意软件成功入侵270000部安卓手机
  5. android滑动切换屏幕(扒的是launcher2/wo
  6. Android(安卓)代码热修复详解
  7. 自定义Android带图片的按钮
  8. android Item 滑动删除核心逻辑实现
  9. android增加swap分区能提速反应很显著哦!
  10. Android(安卓)非技术问题硬知识点整理