如何在TabHost中将keyKeyEvent调度到currentView

时间:2013-03-25 08:29:17

标签: android

我需要在TabActivity中更改KeyEvent分派。如果当前选项卡内容活动/视图可以处理KeyEvent.KEYCODE_Back,则让它处理它。如果没有,请显示如下提示的对话框:“你想退出吗?”。怎么办呢?

我在TabActivity中试过这段代码:(无法实现我的要求)

@Override
public boolean dispatchKeyEvent(Event event){
    if(event.getKeyCode() == KeyEvent.KEYCODE_BACK){
        if(!mTabHost.getCurrentView.dispatchKeyEvent(event)){
            showDialog(0);
            return true;
        }
    }
    return super.dispatchKeyEvent(event);
}

1 个答案:

答案 0 :(得分:1)

我认为this link可以让你清楚。

你应该覆盖 onKeyDown 方法,并直接调用 mTab​​Host.onKeyDown(...)方法,检查它返回结果,如果为false,则表示你应该显示退出给用户的消息。 希望可以帮到你。