我有一个 TabActivity,根据选定的选项卡显示其他 Activities 作为内容。我想做的是从“父”活动中尝试捕获返回键按下事件,但是无论是 onKeyDown() 还是 onBackPressed() 都没有在父级中被调用......它被“子”活动处理了。有没有办法将其传递到“父”活动?
为什么不直接在子Activity中使用:
@Override
public void onBackPressed () {
this.getParent().onBackPressed();
}
@Override
public void onBackPressed () {
MyTabActivity.getHandler().sendEmptyMessage(MyTabActivity.BACK_PRESSED);
}
我也遇到了同样的问题。我是这样解决的:
@Override
public boolean dispatchKeyEvent(KeyEvent event)
{
if (event.getKeyCode() == KeyEvent.KEYCODE_BACK)
{
//things u want to do when back key pressed
}
return super.dispatchKeyEvent(event);
}