Erreur: vue non attachée au gestionnaire de fenêtres
Je suis le suivant à distance à partir de clients, donc je ne sais pas quel matériel, etc ils sont utilisant.
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:417)
at android.app.Dialog.dismissDialog(Dialog.java:279)
at android.app.Dialog.access$000(Dialog.java:72)
at android.app.Dialog$1.run(Dialog.java:108)
at android.app.Dialog.dismiss(Dialog.java:263)
at com..mysite.android.ActivityGame$1.onFinish(ActivityGame.java:154)
at android.os.CountDownTimer$1.handleMessage(CountDownTimer.java:118)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4203)
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:799)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
Ce qui se passe en raison d'une ProgressDialog
progressDialog = new ProgressDialog( this );
progressDialog.setMessage(getString(R.string.get_ready));
progressDialog.setCancelable(false);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.setMax(12);
progressDialog.show();
new CountDownTimer(3000, 250) {
@Override
public void onTick(long millisUntilFinished) {
//progressDialog.incrementProgressBy(1);
}
@Override
public void onFinish() {
progressDialog.dismiss(); //********* ERROR HAPPENS HERE *********
nextQuestion();
}
}.start();
L'Activité ressemble à ceci dans le Manifeste.
<activity android:theme="@style/GameTheme" android:name=".ActivityGame" android:screenOrientation="portrait" android:launchMode="singleTask" android:configChanges="keyboardHidden|orientation"></activity>
Donc ce que cela pourrait signifier? Je pense qu'il a quelque chose à voir avec l'Activité d'être détruit alors créé, mais comme vous pouvez le voir j'ai le configChanges réglé correctement.
source d'informationauteur jax | 2010-07-31
Vous devez vous connecter pour publier un commentaire.
Essayer:
dans votre substituée
onDestroy()
ouonStop()
méthodes.Ce problème survient lorsque vous tentez d'afficher une boîte de dialogue après que vous avez quitté un
Activity
.Je viens de résoudre ce problème simplement en écrivant le code suivant:
Pour l'essentiel, de la classe à laquelle vous avez commencé
progressDialog
remplaceronDestroy()
méthode et de le faire de cette façon. Il a résolu Activité de fuite de la fenêtre problème.Cela se produit généralement lorsque vous appelez rejeter après l'activité a été fermé.
Afin de poignée invisible points de vue, vous ne pouvez pas utiliser isShowing() et vérifier que la fenêtre de la pièce jointe dans votre onDestroy()
ou dans mon cas, je n'étais pas à l'aide d'un dialogue, mais une fenêtre personnalisée ajoutée par le WindowManager, qui a été (peut-être) invisible.
Im aussi été confronté au même problème quand j'ai essayé de fermer la boîte de dialogue à onPageFinished méthode de vue Web.
parfois onPageFinished appelé après que l'activité a été fermé.
Voici la solution pour elle:
Essayer!
Vous pouvez demander à "boîte de dialogue.isIndeterminate ()". Fonctionne très bien.