我想用 , 开始一个新activity
的result
,startActvityForResult()
但我想让back
按钮在新活动中正常工作。
目前,当我调用一个新Activity
的结果时,当我按下新活动中的后退按钮时没有任何反应。
我试过这样的事情:
@Override
public void onBackPressed() {
setResult(0);
super.onBackPressed();
finish();
}
在新的活动中,但它没有工作。按下后退按钮时仍然没有任何反应。
有没有解决的办法?
Activity
编辑:我当然可以在(我可以吗?)中加载最后一个onBackPressed()
,但这似乎是一个相当糟糕的黑客。
Alex Ady 的回答解决了我的问题,但我仍然不明白为什么onBackPressed()
不起作用。现在的工作代码是这样的:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK)) {
setResult(1);
finish();
}
return super.onKeyDown(keyCode, event);
}
我可以用一个解释。