멜팅비의 개발 공부

[Android] 안드로이드 android.view.WindowManager$BadTokenException: Unable to add window 에러 해결방법 본문

개발 공부/[Android 개발]

[Android] 안드로이드 android.view.WindowManager$BadTokenException: Unable to add window 에러 해결방법

멜팅비 2021. 3. 2. 20:31
반응형

ViewModel에서 Dialog를 생성할 때 android.view.WindowManager$BadTokenException: Unable to add window 에러가 발생했다.

발생원인은 Dialog 생성 시 파라미터로 넘긴 context를 applicationContext로 넘겨서 발생한 에러였다.

 

ViewModel에서 해결 할 때는 메서드 호출 시 view를 넘겨서 view.context를 사용했다.

// data에 view import
<data>
	<import type="android.view.View />
</data>

...

android:onClick="@{(v)->viewModel.someFunction(v)}"

 

일반적으로 해결하고자 할 때는 applicationContext 대신 activity(this)를 넘기면 된다.

반응형
Comments