运用WindowManager添加了一个Window,在销毁activity时总是报"has leaked window"

mWindowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);

LayoutParams lp =new LayoutParams(

LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT,

LayoutParams.TYPE_APPLICATION,

LayoutParams.FLAG_NOT_TOUCHABLE

                | LayoutParams.FLAG_NOT_FOCUSABLE,

PixelFormat.TRANSLUCENT);

mWindowManager.addView(mDialogText, lp);


protected void onDestroy() {

super.onDestroy();

if (mWindowManager !=null) {

  mWindowManager.removeView(mDialogText);}

}

报错信息:has leaked window android.support.v7.widget.AppCompatTextView{3e9a140 I.ED..... ......ID 0,0-210,232} that was originally added here

解决方法:将onDestroy方法中mWindowManager.removeView(mDialogText); 替换为mWindowManager.removeViewImmediate(mDialogText);

你可能感兴趣的:(运用WindowManager添加了一个Window,在销毁activity时总是报"has leaked window")