后退按钮双击

时间:2011-05-22 09:08:45

标签: java android

我是新的Android开发人员。我想问个问题。这就是我需要的:当用户点击后退按钮时,它算作双击?

@Override public void onBackPressed() { --> what to write here? return; } }

3 个答案:

答案 0 :(得分:7)

您需要检查按下的间隔,并确定是否可以将其视为双击:

private static final long DOUBLE_PRESS_INTERVAL = /* some value in ns. */;
private long lastPressTime;

@Override
public void onBackPressed() {
    long pressTime = System.nanoTime();
    if(pressTime - lastPressTime <= DOUBLE_PRESS_INTERVAL) {
        // this is a double click event
    }
    lastPressTime = pressTime;
}

答案 1 :(得分:1)

您可能应该在问题中包含想要此功能而不是评论的原因。它使我们更容易指出你正确的方向。有几种方法可以达到你想要的效果,但我不建议使用“双后退”方法。

相反,如果您在对话框或搜索活动中的某个位置显示进度条,则搜索和第二个活动之间没有活动。这样你就不需要做双背了。

此外,您可以在第二个活动中显示进度条,直到工作完成,然后通过另一个setContentView(View)调用将其替换为实际内容。请注意,这将需要线程(否则进度条将永远不会显示)。

答案 2 :(得分:0)

双键按钮

private static long back_pressed;

@Override
public void onBackPressed()
{
        if (back_pressed + 2000 > System.currentTimeMillis()) super.onBackPressed();
        else Toast.makeText(getBaseContext(), "Press once again to exit!", Toast.LENGTH_SHORT).show();
        back_pressed = System.currentTimeMillis();
}