簡介
在很多程序中燕少,都有這樣一個功能透乾,就是在主界面侠仇,連續(xù)點擊返回鍵會退出程序。它一般是這樣顯示的:第一次按下提示你 再按一次退出程序 筑累,如果此時立馬點擊返回鍵會直接退出整個App袱蜡;如果超過了預(yù)設(shè)的間隔時間再按,又會提示再按一次退出程序慢宗,下面實現(xiàn)一下坪蚁,完全可以抽離出來作為一個工具方法來調(diào)用。
Activity代碼
public class MainActivity extends AppCompatActivity {
// 彈出提示框
private Toast toast;
// 記錄第一次按下的時間
private long firstPressTime = -1;
// 記錄第二次按下的時間
private long lastPressTime;
// 兩次按下的時間間隔
private final long INTERVAL = 2000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
toast = Toast.makeText(getApplicationContext(), "再按一次退出程序", Toast.LENGTH_SHORT);
}
/**
* 按下返回鍵的時候調(diào)用
*/
public void onBackPressed() {
showQuitTips();
}
/**
* 顯示提示框
*/
private void showQuitTips() {
// 如果是第一次按下 直接提示
if (firstPressTime == -1) {
firstPressTime = System.currentTimeMillis();
toast.show();
}
// 如果是第二次按下镜沽,需要判斷與上一次按下的時間間隔敏晤,這里設(shè)置2秒
else {
lastPressTime = System.currentTimeMillis();
if (lastPressTime - firstPressTime <= INTERVAL) {
System.exit(0);
} else {
firstPressTime = lastPressTime;
toast.show();
}
}
}
}
運行測試
- 連續(xù)點擊
- 不連續(xù)點擊