2016-09-25 44 views
-1

我有一個簡單的ProgessDialog。我顯示對話框,調用一個方法,稍後在方法內部隱藏對話框,但我得到一個控制檯錯誤。Android ProgessDialog奇怪的控制檯錯誤信息

ProgressDialog progressDialog = new ProgressDialog(ChangeEmailActivity.this); 
progressDialog.setTitle("Loading"); 
progressDialog.show(); 

裏面的方法

E /窗口管理器:android.view.WindowLeaked:活動de.at_c.liftkey.ChangeEmailActivity已泄漏窗口com.android.internal.policy.impl。 PhoneWindow $ DecorView {10f2f3a8 GE .... R ..... ID 0,0-729,322}最初在這裏添加的是 at android.view.ViewRootImpl。(ViewRootImpl.java:363) at android.view.WindowManagerGlobal .addView(WindowManagerGlobal.java:271) 在android.app.Dialog.show(Dialog.java:298) at de.at_c.liftkey.ChangeEmailActivity $ 1.onClick(ChangeEmailActivity.java:42)上的android.view.WindowManagerImpl.addView(WindowManagerImpl.java:85) (android.view.java:780) at android.view.View $ PerformClick.run(View.java:19866) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5254) at java.lang.reflect.Method.invoke(娜tive方法) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal .os.ZygoteInit.main(ZygoteInit.java:698)

+0

這是因爲您的活動中的某些位置正在導航到不同的活動。並在稍後嘗試調用隱藏您以前的活動。 progressDialog屬於ChangeEmailActivity。您需要參與該活動才能執行任何類型的操作。請張貼該方法的代碼 –

回答

1

使用

progressDialog.dismiss(); 

而不是

您需要關閉對話框而不是隱藏對話框。

1

嘗試運行progressBar.dismiss()之前,持有它的活動或片段被銷燬。總是可以把它放在onDestroy()方法中。