为什么应用程序在启动进度对话框抛出应用程

时间:2011-12-14 09:59:48

标签: android progressdialog

这是我在处理程序尝试从应用程序

启动进度对话框时获得的异常
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
 at android.view.ViewRoot.setView(ViewRoot.java:531)
 at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
 at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
 at android.app.Dialog.show(Dialog.java:241)
 at android.app.ProgressDialog.show(ProgressDialog.java:107)
 at android.app.ProgressDialog.show(ProgressDialog.java:90)

如果有人知道,请提出解决方案

4 个答案:

答案 0 :(得分:3)

将您的情境更改为ActivityName.this

因为 BadToken Exception ,所以在您的情况下,您将进度对话框添加到您的活动屏幕,但传递错误的上下文。

答案 1 :(得分:1)

如果粘贴代码会很好。通过错误记录其上下文的问题。您可能正在为正在显示的活动传递不同的上下文。

答案 2 :(得分:0)

对于进度对话框,使用通过方法

获得的上下文
  

getApplicationContext();

答案 3 :(得分:0)

如果粘贴代码会更容易......但仍有两个可能的原因。 1.错误活动的背景。 2.您说您正在通过处理程序启动,请检查处理程序是否与您正在使用上下文相同的活动以启动对话框。