Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓如何追踪和清除某些倒退_Android_Android Intent_Back Stack - Fatal编程技术网

Android 安卓如何追踪和清除某些倒退

Android 安卓如何追踪和清除某些倒退,android,android-intent,back-stack,Android,Android Intent,Back Stack,我的活动后台结构如下所示: A(登录页)->B(列表屏幕)->C(详细信息屏幕) |---->D(员额 项目屏幕)->E(发布结果屏幕) B&D都是A的直系子女 我想为用户提供一种从结果屏幕(E)查看细节(C)的方法。当他们离开时,我想移除D&E,这样他们在后退时就不会回去了。当用户从C中按back时,一旦跳转,他们就应该返回A 编辑:然而,用户可以在E屏幕上按back返回,并在D屏幕上进行更改,以修复他们犯的任何错误,因此我也必须将D保留在Backback中 这样做的最佳方式是什么?我是否应该

我的活动后台结构如下所示:

A(登录页)->B(列表屏幕)->C(详细信息屏幕)
|---->D(员额 项目屏幕)->E(发布结果屏幕)

B&D都是A的直系子女

我想为用户提供一种从结果屏幕(E)查看细节(C)的方法。当他们离开时,我想移除D&E,这样他们在后退时就不会回去了。当用户从C中按back时,一旦跳转,他们就应该返回A

编辑:然而,用户可以在E屏幕上按back返回,并在D屏幕上进行更改,以修复他们犯的任何错误,因此我也必须将D保留在Backback中

这样做的最佳方式是什么?我是否应该阻止D&E进入后台并处理我自己的导航?有没有办法明确地清理D&E并保留所有其他内容?或者有更好的方法吗?

我考虑过使用
cleartop
标志,但如果用户在之前从未访问过C,cleartop将无法工作,因为您无法返回A

我用来在后台隐藏一个活动

例如:

用户看到活动B并启动活动C。在声明C后,调用finish将B隐藏在Backback中:

  startActivity(<Activity-C intent>);
  finish();
startActivity();
完成();

我应该提到,E屏幕也会显示错误消息,用户也可以通过反按从E导航到D。我的错。