Android 活动泄漏窗口令牌异常
我向用户显示runnable中的一个对话框,并给他两个按钮,YES和NO。如果用户按NO,我就完成了活动。如果用户按YES,我想开始另一项活动。以下是对话框代码:Android 活动泄漏窗口令牌异常,android,android-ui,Android,Android Ui,我向用户显示runnable中的一个对话框,并给他两个按钮,YES和NO。如果用户按NO,我就完成了活动。如果用户按YES,我想开始另一项活动。以下是对话框代码: ad.setTitle("Title"); ad.setMessage("Do you want to exit?"); ad.setIcon(R.drawable.common_signin_btn_icon_light);
ad.setTitle("Title");
ad.setMessage("Do you want to exit?");
ad.setIcon(R.drawable.common_signin_btn_icon_light);
ad.setButton(AlertDialog.BUTTON_POSITIVE, "Yes",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
// OPEN UP REGISTRATION ACTIVITY AGAIN
ad.dismiss();
finish();
startActivity(new Intent(
ActivityCodeVerification.this,
ActivityRegister.class));
}
});
ad.setButton(AlertDialog.BUTTON_NEGATIVE, "No,Exit",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
ad.dismiss();
finish();
startActivity(new Intent(
ActivityCodeVerification.this,
ActivityRegister.class));
}
});
无论何时按下任何按钮,都会出现以下异常:
Activity com.Rp.chatout.ActivityCodeVerification has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@4055a530 that was originally added here
我做错了什么??
广告秀() 在完成活动之前,在这两种情况下都添加call method disclose()
出现此异常是因为您在对话框中保留对活动的引用,而活动已被销毁。在这两种情况下,请在完成活动之前添加调用方法disclose()
出现此异常是因为您在对话框中保留对活动的引用,而活动已被销毁。在这两种情况下,请在完成活动之前添加调用方法disclose()
出现此异常是因为您在对话框中保留对活动的引用,而活动已被销毁。在这两种情况下,请在完成活动之前添加调用方法disclose()
出现此异常是因为您在对话框中保留对该活动的引用,而该活动已被销毁。在从执行上述代码的位置退出该活动之前,您需要调用
disclose()
在离开活动之前,应关闭所有窗口和对话框。在从执行上述代码的活动中退出之前,需要调用
dismise()
在离开活动之前,应关闭所有窗口和对话框。在从执行上述代码的活动中退出之前,需要调用
dismise()
在离开活动之前,应关闭所有窗口和对话框。在从执行上述代码的活动中退出之前,需要调用
dismise()
离开活动前,应关闭所有窗口和对话框。请查看我的代码。我仍然在犯错误。我所做的一切都是在一个runnalbe内部handler@UsmanRiaz这意味着您在处理程序中引用了活动。调用处理程序.removeCallbacksAndMessages(null);或处理程序。removeCallbacks(runnable);。回答得很好。我只是这么做了,然后读了你的评论。是一样的。谢谢,现在请看我的代码。我仍然在犯错误。我所做的一切都是在一个runnalbe内部handler@UsmanRiaz这意味着您在处理程序中引用了活动。调用处理程序.removeCallbacksAndMessages(null);或处理程序。removeCallbacks(runnable);。回答得很好。我只是这么做了,然后读了你的评论。是一样的。谢谢,现在请看我的代码。我仍然在犯错误。我所做的一切都是在一个runnalbe内部handler@UsmanRiaz这意味着您在处理程序中引用了活动。调用处理程序.removeCallbacksAndMessages(null);或处理程序。removeCallbacks(runnable);。回答得很好。我只是这么做了,然后读了你的评论。是一样的。谢谢,现在请看我的代码。我仍然在犯错误。我所做的一切都是在一个runnalbe内部handler@UsmanRiaz这意味着您在处理程序中引用了活动。调用处理程序.removeCallbacksAndMessages(null);或处理程序。removeCallbacks(runnable);。回答得很好。我只是这么做了,然后读了你的评论。是一样的。谢谢我正在做的这件事是在一个把手里面我正在做的这件事是在把手里面我正在做的这件事是在把手里面我正在做的这件事是在把手里面我正在做的这件事是在把手里面