Java 后退按钮不可用';行不通
我有一份有两项活动的申请。在第一个活动中,可以通过单击按钮启动第二个活动Java 后退按钮不可用';行不通,java,android,navigation,Java,Android,Navigation,我有一份有两项活动的申请。在第一个活动中,可以通过单击按钮启动第二个活动 @Override public void onClick(View v) { Intent intent = new Intent(firstActivity, SecondAcitivity.class); startActivity(intent); } 奇怪的是,在第二个活动中单击“后退”按钮并没有让我回来。我认为这样的基本行为已经实现了,所以我不需要做任何事情。实际上,在我写的其他应用程序中,从
@Override
public void onClick(View v) {
Intent intent = new Intent(firstActivity, SecondAcitivity.class);
startActivity(intent);
}
奇怪的是,在第二个活动中单击“后退”按钮并没有让我回来。我认为这样的基本行为已经实现了,所以我不需要做任何事情。实际上,在我写的其他应用程序中,从来没有出现过这样的问题
当然,在我参加的第一个活动的课堂上
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
firstActivity = this;
...
}
你有没有采取措施拦截关键事件 例如:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK){
return true;
}
return super.onKeyDown(keyCode, event);
}
或
检查清单中活动的启动模式是否覆盖了onkeypressed或onbackpressed方法?还要检查你的活动启动模式。你能提供第二个活动的来源吗?是的,这就是问题所在。我在
onKeyDown
方法中为KeyEvent.KEYCODE\u VOLUME\u UP
和KeyEvent.KEYCODE\u VOLUME\u DOWN
编写了一个特殊行为。对于所有其他KeyEvents
I返回false
。显然返回false代码>在这里没有帮助。现在我添加了returnsuper.onKeyDown(keyCode,event)
而不是返回false
,一切正常。谢谢!
@Override
public void onBackPressed() {
//not invoke the super.onBackPressed();
}