2
时崩溃。当我打开一个对话框并且设备旋转时,应用程序崩溃,我的应用程序中的Android对话框在旋转
我以为我已经尽一切努力处理旋转自己
在我所有的活动我都这使在清单
android:configChanges="keyboardHidden|orientation"
android:screenOrientation="fullSensor"
和有问题的对话我有这样的代码
if(!WebViewActivity.this.isFinishing() && dialog != null && dialog.isShowing()){
dialog.dismiss();
}
但是,如果在设备旋转时打开对话框,我仍会收到此崩溃消息
java.lang.IllegalArgumentException: View not attached to window manager
at android.view.WindowManagerGlobal.findViewLocked(WindowManagerGlobal.java:383)
at android.view.WindowManagerGlobal.removeView(WindowManagerGlobal.java:285)
at android.view.WindowManagerImpl.removeView(WindowManagerImpl.java:79)
at android.app.Dialog.dismissDialog(Dialog.java:323)
at android.app.Dialog.dismiss(Dialog.java:306)
at bundle.android.views.WebViewActivity$1.onPageFinished(WebViewActivity.java:133)
at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:323)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5039)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)
或此错误消息
android.view.WindowManager$BadTokenException: Unable to add window -- token [email protected] is not valid; is your activity running?
这个例子是关于名为WebViewActivity
的活动,但我有同样的问题
许多其他活动我不觉得有必要使用onConfigurationChanged
生命周期方法,但任何解决方案将受到欢迎!
你是笑从AsyncTask或非UI线程的对话? – 2013-03-15 16:22:14
看看http://blog.doityourselfandroid.com/2010/11/14/handling-progress-dialogs-and-screen-orientation-changes/ – 2013-03-15 16:52:54
@MehulJoisar在onPreExecute和解雇onPostExecute,所以这些都是所有UI线程操作,但旋转发生在非UI线程正在运行 – CQM 2013-03-15 19:06:46