Android - 模拟后退按钮

dav*_*vid 66 android button back

当我在我的应用程序中按下按钮时,我需要返回上一个活动.

有任何想法吗?

Chr*_*son 95

finish()从您想要结束的活动打电话应该照顾这个.

许多年后的编辑:这仍然有效,但这是一个严厉的方法.当我最初发布这个时,Fragments并不存在,并且(正如几个评论者所指出的那样)当Fragments涉及到时,这种方式的工作方式不同.如果您正在使用,现在有更好的方法Fragments.

  • 这不会模拟后退按钮.如果您只使用活动,则可以,但如果您在活动中使用片段,则会将所有片段与活动一起关闭. (18认同)
  • @tasomaniac似乎是getFragmentManager().popBackStack()为片段做了工作. (11认同)
  • 无需道歉,乐于助人! (7认同)

黄雨伞*_*黄雨伞 68

仅供记录:在某些情况下,所描述的方法与后退按钮的作用不同,但您可以调用

this.onBackPressed();
Run Code Online (Sandbox Code Playgroud)

要么

getActivity().onBackPressed();
Run Code Online (Sandbox Code Playgroud)

如果你在一个片段中实现exaclty相同的行为.

  • 据我所知,这是最好的答案.谢谢. (5认同)
  • 这是正确的解决方案,但请确保您在 UI 线程上,否则它将无法工作。 (2认同)

zaj*_*.m2 37

使用片段时:

getFragmentManager().popBackStack();
Run Code Online (Sandbox Code Playgroud)

要么

getSupportFragmentManager().popBackStack();
Run Code Online (Sandbox Code Playgroud)

如果您使用的是android.support.v4.app包