Android:检测后退按钮发布

Sal*_*nas 2 android

我可以使用以下方法检测何时按下后退按钮:

@Override
public void onBackPressed() {
    //Do my thing
}
Run Code Online (Sandbox Code Playgroud)

但现在我想检测后退按钮的释放时间.我怎样才能做到这一点?我无法找到任何onBackReleased()我可以覆盖的方法来做我的事情.

Aka*_*ave 5

没有专门检测后退按钮释放的方法,但您可以使用onKeyDown()onKeyUp()方法.检查以确保该键是后退按钮,并在方法中执行您的操作.这是你可以做的事情:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        // do your stuff for when the back button is initially pressed
        return true;
    } else {
        return false;
    }
}

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        // do your stuff for when the back button is released
        return true;
    } else {
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

如果你想覆盖默认的背压,你可以使用这个onBackPressed()方法,如下所示:

@Override
public void onBackPressed() {
    // Prevents the user from clicking the back button and returning to the parent activity
}
Run Code Online (Sandbox Code Playgroud)

这些方法可以直接在您的课程中实现.希望能帮助到你!