簡體   English   中英

后退按鈕雙擊

[英]Back button double click

我是新的android開發人員。 我想問個問題。 這是我需要的:當用戶單擊“后退”按鈕時,是否算作雙擊?

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

您需要檢查兩次按壓之間的間隔,並確定是否可以將其計為雙擊:

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;
}

您可能應該在問題中包含想要此功能的理由,而不是評論。 它使我們可以輕松地為您指明正確的方向。 有幾種方法可以實現您想要的,但我不建議使用“雙倍回退”方法。

相反,如果在對話框中或搜索活動中的某處顯示進度條,則搜索與第二個活動之間沒有活動。 這樣一來,您無需做雙后衛。

另外,您可以在第二個活動中顯示進度條,直到完成工作為止,然后使用另一個對setContentView(View)調用將其替換為實際內容。 請注意,盡管如此,這仍需要線程化(否則進度條將永遠不會顯示)。

雙鍵按鈕

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();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM