android studio “leaked window“ 错误

昨天玩我做的app,发现app运行没问题,但log里面出现下面的错误:

Activity com.example.thirdversionclock.MainActivity_welcome has leaked window DecorView@3d54ba2[MainActivity_welcome] that was originally added here

逛了一圈发现是我的app里面用了dialog,但在activity之间跳转的时候没有关掉,所以出现这个错误,虽然好像没什么影响,但毕竟还是个错误,于是修正一下。

一般这个情况都是在app运行的时候根据需要弹出对话框,比如像下面这样:

如果点击"使用"的话,这个对话框和后面的activity都要销毁,再跳转到另一个页面,后面的activity可以finish()销毁,前面的dialog要用dialog.dismiss()销毁,而且,dialog要在activity之前销毁。类似下面这样:

startActivity(intent);//开始跳转
dialog.dismiss();//销毁对话框,必须在activity销毁前销毁dialog,否则会出现leaked windows错误。
finish();//销毁本页面

这样就不会出错了。

猜你喜欢

转载自blog.csdn.net/kim5659/article/details/129600021