当您在Android中按下“后退”按钮时,它在后台调用了finish(),并且我希望将其替换为暂停行为,但我发现没有文档可让您手动触发它。
编辑:好的,我猜这需要更多代码
public boolean onKeyDown(int keyCode, KeyEvent event)
{
int Action = event.getAction();
if (Action == KeyEvent.ACTION_DOWN)
{
if (event.getKeyCode() == KeyEvent.KEYCODE_BACK)
{
//Default Implementation calls finish();
//I want to call Pause, which should call onPause and then send my app in the background !
}
}
}
我只是尝试了onBackPressed,至少在Android 4.3上它甚至都没有被上面的代码击中。我尝试手动调用onPause(),但这只会使我的应用程序进入无效状态。
要覆盖“后退按钮”的行为,您可以覆盖onBackPressed()
您Activity
在按下“后退按钮”时调用的方法:
@Override
public void onBackPressed() {
moveTaskToBack(true); // "Hide" your current Activity
}
通过使用moveTaskToBack(true)
您的活动发送到后台,但不能保证它会保持在“暂停”状态,Android可以在需要内存时将其杀死。我不知道您为什么想要这种行为,我认为最好是保存“活动”状态并在返回时恢复它,或者简单地,用您要带来的新“活动”启动另一个Intent。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句