如何以编程方式在android中按下button?

在我的应用程序中,我有一个注销function。 如果用户点击注销,则进入主屏幕。 现在,我正按退出button退出我的应用程序。 但我想要的是我需要自动退出(即编程)像后退buttonfunction一样。 我知道通过调用完成()将做function。 但事情是去往前面的活动。

支持onBackPressed()从以下版本开始:API Level 5

  @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK)) { onBackPressed(); } } @Override public void onBackPressed() { super.onBackPressed(); // finish(); } 

你不需要重写onBackPressed() – 它已经被定义为当用户按下后退button时你的活动默认执行的动作。 所以,只要你想“编程地按”后退button,就调用onBackPressed()

这只会导致finish()被调用,但;)

我认为你对后退button的作用感到困惑。 默认情况下,只是调用finish() ,所以它只是退出当前的活动。 如果你有这个活动背后的东西,该屏幕将显示。

你可以做什么,当从login启动你的活动,添加一个CLEAR_TOP标志,所以当你退出你的login活动不会在那里。

有时重写方法onBackPressed()会很有用,因为如果你使用片段,并且在它们之间进行切换,如果你按回退button,它们会返回到前一个片段。

在您的活动中覆盖它之后调用onBackPressed