android.view.WindowLeaked - 在使用对话框和放大器;新意图 [英] android.view.WindowLeaked - while using dialog & new intent
问题描述
我曾尝试在计算器提供的所有可能的解决方案。但我仍然有此错误坐在logcat的:
I have tried all possible solutions provided at stackoverflow. But I am still sitting with this error in logcat:
活动com.xyz.MainActivity渗漏窗口com.android.internal.policy.impl.PhoneWindow $ {DecorView VE 40d687c0 .... - [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", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
//**************************************
//Do something -- TBD
//**************************************
dialog.cancel();
}
});
AlertDialog alertDialog = alert.create();
alertDialog.show();
}
下面是我在logcat中得到的错误:
Below is the error that I get in 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,0-772,295} that was originally added here
06-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,0-772,295} that was originally added here
06-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$1.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$1.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中的精细inspite。
Also, how serious is this error? The app seems to work fine inspite of this error in logcat.
TIA
拉马纳坦
推荐答案
不要忘记回报运营商第一案?
Don't you forget return operator in first case?
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;
}
现在您要开始新的活动(并停止当前的)和preparing后ANS连接到第一已经停止活动显示对话框。
Now you are trying to start new activity (and stops current one) and after that preparing ans showing dialog attached to first already stopped activity.
这篇关于android.view.WindowLeaked - 在使用对话框和放大器;新意图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!