拦截Android中的返回键

时间:2013-08-02 01:38:56

标签: android android-activity android-view

我无法弄清楚如何处理以下活动流程。

我的Android应用中有2个活动和1个视图类。

主要活动 - >子活动 - >查看类(我从主活动类调用子活动,在子活动中调用我正在实例化一个视图类)。

但是当我在View Class中按回按钮时,它返回到主活动。

查看课程(按下后退按钮) - >主要活动

但我希望的行为是这样的:View Class(按下后退按钮) - >子活动 - >主要活动)。

请指导我怎么做。

提前致谢。

3 个答案:

答案 0 :(得分:3)

Activity具有onBackPressed()回调方法。您可以覆盖此项,但如果您不打算以特殊方式执行操作,请务必调用super.onBackPressed(),以便最终可以正常退出活动。

@Override
public void onBackPressed() {
    if (/* ... */) {
        // do something special
    } else {
        super.onBackPressed();
    }
}

答案 1 :(得分:1)

好的,你可以在子活动中听取关键事件。像这样:

    public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK&&your view is not close) {
            closeyourview();
            return true;// important you can close your view here
        }

    return super.onKeyDown(keyCode, event);
}

答案 2 :(得分:0)

我不确定View Class是什么意思。也许您可以使用新活动来显示视图,然后一切都会好的。