我有一个小错误我想摆脱。我不知道为什么会发生此错误。模拟器和测试手机运行完美!我拥有的唯一信息是我从 android Market 中的应用程序用户那里获得的 Stacktraces。
java.lang.IllegalArgumentException: View not attached to window manager
at android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java:355)
at android.view.WindowManagerImpl.removeView(WindowManagerImpl.java:200)
at android.view.Window$LocalWindowManager.removeView(Window.java:432)
at android.app.Dialog.dismissDialog(Dialog.java:278)
at android.app.Dialog.access$000(Dialog.java:71)
at android.app.Dialog$1.run(Dialog.java:111)
at android.os.Handler.handleCallback(Handler.java:587)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at dalvik.system.NativeStart.main(Native Method
首先,我认为如果用户在进度对话框尚未关闭时更改手机的方向,下面的代码会导致应用程序崩溃。我通过添加:android:screenOrientation="portrait" 使方向不会改变。但是错误仍然存在。
任何人都可以帮助我吗?这是我使用的代码示例:
final ProgressDialog pd = ProgressDialog.show(this, "Title", "Message", true, false);
new Thread(new Runnable(){
public void run(){
makeHttpRequest();
pd.dimiss();
}
}).start();