Android后退按钮问题

Jac*_*ack 0 android button back

假设我的应用程序中有3个活动:A,B和C.应用程序的流程是:A - > B - > C.

一旦到达C,按下后退按钮将把用户带到B.如果用户再次按下后退按钮,他们到达A,最后如果再次按下它,他们将退出应用程序.

目标:当用户按下C上的后退按钮时,它们应该转到A而不是 B,如果再次按下它,它们将退出应用程序.

问题:当覆盖活动C上的后退按钮以启动活动A时,一切似乎都没问题.但是,如果用户再次按下后退按钮,它们将返回到活动C.因此,按后退按钮只会在活动A和活动C之间切换.

我想Activity堆栈看起来像:

  • 打开应用程序:A
  • 转到B:A,B
  • 转到C:A,B,C
  • 按下:A,B,C,A
  • 按下:A,B,C
  • 按下:A,B,C,A
  • 按下:A,B,C
  • 按下:A,B,C,A
  • 按下:A,B,C
  • 按下:A,B,C,A
  • ...等等

因此,当按下C上的后退按钮时,似乎错误是启动一个新的Activity?无论如何,我可以提供有关如何实现此行为的建议.

谢谢,杰克

Gui*_*rie 5

您可以添加活动B finish()onStop()方法.

这样,当活动B不再可见时,它将被销毁并从堆栈中删除.

  • 打开应用程序:A
  • 转到B:A,B
  • 转到C:A,C
  • 按下:A
  • 按下:退出