2011-08-17 89 views
1

我有一个具有以下活动的应用程序;Android - 活动堆栈,将当前活动提前并禁用返回键

登录 - >首页区 - >互动记录(触摸屏记录的交互)

虽然这种互动记录是积极的,我想能够允许用户通过任一返回键或家庭退出应用程序键并仍然能够返回到该交互记录器。然而,如果交互记录器完成(在定时器上管理),则用户被带到登录活动

另外,如果我在交互记录器中覆盖后退键,因为我不希望用户销毁它的录音期间活动

在此先感谢,

安迪

+0

目前我的工作是重写后退按钮,如http://www.developerfeed.com/android/howto/how-override-back-button-press-android – Garbit 2011-08-17 12:09:35

回答

1

你需要禁用设备的所有按键和需要处理的返回键。覆盖下面的方法,但记住,你无法控制的home keyend call key行为..

@Override 
public boolean dispatchKeyEvent(KeyEvent event) { 
    if(KeyEvent.KEYCODE_MENU == event.getKeyCode() || KeyEvent.KEYCODE_DPAD_LEFT==event.getKeyCode() 
      || KeyEvent.KEYCODE_DPAD_DOWN==event.getKeyCode() || KeyEvent.KEYCODE_DPAD_RIGHT==event.getKeyCode() 
      || KeyEvent.KEYCODE_DPAD_UP==event.getKeyCode() || KeyEvent.KEYCODE_DPAD_CENTER==event.getKeyCode()) 
    { 
     return false; 
    }else if(KeyEvent.KEYCODE_BACK==event.getKeyCode()){ 
     //Do your task here... 
    } 
    return true; 
} 

实现您的应用程序退出要求,同时从一个活动移动到另一个终点前一个,如果你需要来启动它回...