設計需求:當用戶想要退出某個頁面(經常為首頁)時,跳出Toast提示信息“再按返回鍵退出!”。
當用戶兩次雙擊,時間間隔少於800毫秒時,退出該應用。否則只顯示提示信息,無操作。
@Override
public void onBackPressed() {
if(System.currentTimeMillis() - mExitTime < 800) {
ScrollingActivity.this.finish(); //關閉本活動頁面
}
else{
toast("再按返回鍵退出!");
mExitTime = System.currentTimeMillis(); //這里賦值最關鍵,別忘記
}
}
解析:
Ⅰ.在該方法前面,主類下面,要聲明mExitTime變量並進行初始化。
private long mExitTime = System.currentTimeMillis(); //為當前系統時間,單位:毫秒
Ⅱ.兩次點擊設在800毫秒是經實驗驗證,符合人體反應速度的。
Ⅲ.toast()函數是自定義的,調用起來方便。
private void toast(String content){ Toast.makeText(getApplicationContext(),content,Toast.LENGTH_SHORT).show(); }
到這里,設計就完成了。