android.view.WindowLeaked – 同时使用对话框和新意图

android.view.WindowLeaked – 同时使用对话框和新意图,第1张

概述我已经尝试了stackoverflow提供的所有可能的解决方案.但是我仍然在logcat中遇到这个错误: ‘活动com.xyz.MainActivity泄露了最初添加的窗口com.android.internal.policy.impl.PhoneWindow $DecorView {40d687c0 V.E ….. R ….. ID 0,0-772,268} if (Var_place_hold 我已经尝试了stackoverflow提供的所有可能的解决方案.但是我仍然在logcat中遇到这个错误:

‘活动com.xyz.MainActivity泄露了最初添加的窗口com.android.internal.policy.impl.PhoneWindow $DecorVIEw {40d687c0 V.E ….. R ….. ID 0,0-772,268}

if (Var_place_holder.level == "one")                    {                      Var_place_holder.Title=obj_itemDetails.getTitle();                        Var_place_holder.level="two";                        Intent intent = getIntent();                        dialog.dismiss();                        finish();                        startActivity(intent);}                 if (Var_place_holder.level == "two")                  {                    AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this);                    String category = Var_place_holder.Title;                    //String imgurL = obj_itemDetails.getIcon();                    String Desc = obj_itemDetails.getTitle();                    alert.setTitle("Detail:");                    String Msg1 = "category: " + category;                    String Msg2 = "Desc: " + Desc;                    alert.setMessage(Msg1+"\n"+Msg2+"\n");                    //alert.setMessage("Price: Rs." + Price);                    alert.setPositivebutton("Add",new DialogInterface.OnClickListener() {                          public voID onClick(DialogInterface dialog,int whichbutton) {                    //**************************************                      //Do something -- TBD                    //**************************************                              dialog.cancel();                            }                        });                    alert.setNegativebutton("Cancel",int whichbutton) {                    //**************************************                      //Do something -- TBD                    //**************************************                              dialog.cancel();                              }                            });                                             AlertDialog alertDialog = alert.create();                    alertDialog.show();                }

下面是我在logcat中得到的错误:

06-25 05:36:50.080: E/WindowManager(2937): Activity com.xyz.MainActivity has leaked window com.androID.internal.policy.impl.PhoneWindow$DecorVIEw{40d68560 V.E..... R.....ID 0,295} that was originally added here06-25 05:36:50.080: E/WindowManager(2937): androID.vIEw.WindowLeaked: Activity com.xyz.MainActivity has leaked window com.androID.internal.policy.impl.PhoneWindow$DecorVIEw{40d68560 V.E..... R.....ID 0,295} that was originally added here06-25 05:36:50.080: E/WindowManager(2937):  at androID.vIEw.VIEwRootImpl.<init>(VIEwRootImpl.java:354)06-25 05:36:50.080: E/WindowManager(2937):  at androID.vIEw.WindowManagerGlobal.addVIEw(WindowManagerGlobal.java:216)06-25 05:36:50.080: E/WindowManager(2937):  at androID.vIEw.WindowManagerImpl.addVIEw(WindowManagerImpl.java:69)06-25 05:36:50.080: E/WindowManager(2937):  at androID.app.Dialog.show(Dialog.java:281)06-25 05:36:50.080: E/WindowManager(2937):  at com.xyz.MainActivity.onItemClick(MainActivity.java:106)06-25 05:36:50.080: E/WindowManager(2937):  at androID.Widget.AdapterVIEw.performItemClick(AdapterVIEw.java:298)06-25 05:36:50.080: E/WindowManager(2937):  at androID.Widget.AbsListVIEw.performItemClick(AbsListVIEw.java:1100)06-25 05:36:50.080: E/WindowManager(2937):  at androID.Widget.AbsListVIEw$PerformClick.run(AbsListVIEw.java:2749)06-25 05:36:50.080: E/WindowManager(2937):  at androID.Widget.AbsListVIEw.run(AbsListVIEw.java:3423)06-25 05:36:50.080: E/WindowManager(2937):  at androID.os.Handler.handleCallback(Handler.java:725)06-25 05:36:50.080: E/WindowManager(2937):  at androID.os.Handler.dispatchMessage(Handler.java:92)06-25 05:36:50.080: E/WindowManager(2937):  at androID.os.Looper.loop(Looper.java:137)06-25 05:36:50.080: E/WindowManager(2937):  at androID.app.ActivityThread.main(ActivityThread.java:5041)06-25 05:36:50.080: E/WindowManager(2937):  at java.lang.reflect.Method.invokeNative(Native Method)06-25 05:36:50.080: E/WindowManager(2937):  at java.lang.reflect.Method.invoke(Method.java:511)06-25 05:36:50.080: E/WindowManager(2937):  at com.androID.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)06-25 05:36:50.080: E/WindowManager(2937):  at com.androID.internal.os.ZygoteInit.main(ZygoteInit.java:560)06-25 05:36:50.080: E/WindowManager(2937):  at dalvik.system.NativeStart.main(Native Method)

此外,这个错误有多严重?尽管在logcat中出现这个错误,该应用程序似乎工作正常.

TIA

拉马纳坦

解决方法 在第一种情况下,你不忘记返回运算符吗?

if (Var_place_holder.level.equals("one")) {       Var_place_holder.Title=obj_itemDetails.getTitle();       Var_place_holder.level="two";       Intent intent = getIntent();       dialog.dismiss();       finish();       startActivity(intent);       return;}

现在,您正尝试启动新活动(并停止当前活动),然后准备ans显示对话框附加到第一个已停止的活动.

总结

以上是内存溢出为你收集整理的android.view.WindowLeaked – 同时使用对话框和新意图全部内容,希望文章能够帮你解决android.view.WindowLeaked – 同时使用对话框和新意图所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1129258.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存