android - finish() 不处理活动。
问题描述
我从这里尝试了答案,但我无法完成一项活动。
这是代码:
private void myMethod() {
startActivity(startNewActivityOpen2);
GlobalVars.questionHolders = null; //is being called.
finish();
amTransitioning = true;
}
调用活动以这些标志开始:
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
我试过了
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK);
但这没有用。
我可以看到完成被调用。我的日志猫说:
ActivityRecord 的重复完成请求{426f37f8 u0 com.assistek.ediary/.PRO_GridOther t5569 f}
活动继续以愉快的方式进行,但没有完成,我收到一个空指针错误,因为单例的值正在被清除。
解决方案
结束(); 不会以您认为它继续执行在finish()之后调用的任何代码的方式终止活动,您应该编写“return;” 完成后避免任何代码执行
推荐阅读
- android - 使用jetpack compose的Android滑动动画
- wordpress - wp-nav-menu 生成一个空的 a 标签
- python - 无法使用 python 连接到已经打开的 SAP GUI 会话
- entity-framework-core - 为什么我不能使用 EF Core 在现有数据库中创建新表?(代码优先)
- ios - 发布版本的 module.modulemap 中缺少 Foo-Swift.h
- ssis - SMTP 脚本任务正在更改附件路径
- java-9 - Java 9 中 javaagent 的模块化问题
- python - 如何在 Django 中获取当前的 projct_id
- amazon-web-services - Watson Assistant IP 范围是什么?
- html - 图像未显示在背景图像之上?引导程序