안드로이드 개발 질문/답변
(글 수 45,052)
04-17 16:09:12.509: ERROR/AndroidRuntime(10180): android.view.WindowManager$BadTokenException: Unable to add window -- token android.view.ViewRoot$W@477491b8 is not valid; is your activity running?
에러명칭입니다. 팝업을 쓰고있는데 별 문제없이 작동하다가도 에딧텍스트를 살짝 빗나가게 클릭하게 될경우 갑자기 죽어버리네요.
처음보는 에러라서 어떻게 해결해야할지도 모르겠어요.
팝업뷰는 아래처럼 만들고 있습니다.
mybook_main = (RelativeLayout)findViewById(R.id.mybook_main);
popupView = View.inflate(this, R.layout.mybook_popup_category_add, null);
popup = new PopupWindow(popupView, 320, 530, true);
popup.showAtLocation(mybook_main, Gravity.CENTER, 0, 0);
popupView.setKeepScreenOn(true);
컨텍스트 문제라는 소리가 잠깐 있던데 이해가 잘 안되서요.
WindowManager$BadTokenException. 이거 왜 생기고 해결책은 뭔가요?
에러명칭입니다. 팝업을 쓰고있는데 별 문제없이 작동하다가도 에딧텍스트를 살짝 빗나가게 클릭하게 될경우 갑자기 죽어버리네요.
처음보는 에러라서 어떻게 해결해야할지도 모르겠어요.
팝업뷰는 아래처럼 만들고 있습니다.
mybook_main = (RelativeLayout)findViewById(R.id.mybook_main);
popupView = View.inflate(this, R.layout.mybook_popup_category_add, null);
popup = new PopupWindow(popupView, 320, 530, true);
popup.showAtLocation(mybook_main, Gravity.CENTER, 0, 0);
popupView.setKeepScreenOn(true);
컨텍스트 문제라는 소리가 잠깐 있던데 이해가 잘 안되서요.
WindowManager$BadTokenException. 이거 왜 생기고 해결책은 뭔가요?




PopupWindow가 혹시 dialog인가요?? dialog인 경우 현재 화면의 context에만 띄울 수 있더라구요..
Dialog를 공통함수으로 사용하다보면 context를 현재 화면의 Context가 아닌 다른 화면의 Context를 사용하게 되는 경우가 있는데 이럴 때 BadTokenException이 발생하더라구요..
아마 Context문제라는 것은 위와 같은 경우를 말하는 걸꺼에요..