Android 兩種方法實現(xiàn)長按返回健退出
Android 長按返回健退出
背景
平常比較常見的都是一定時間間隔內(nèi)按兩次返回鍵來退出應(yīng)用,并且第一次點擊會有相應(yīng)的提示,網(wǎng)上資料比較多,這里寫一下,長按返回鍵退出。
實現(xiàn)
實現(xiàn)的方案常用的有兩個:
重寫dispatchKeyEvent(KeyEvent event)方法
重寫onKeyDown(int keyCode, KeyEvent event)方法
方案一
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getKeyCode() == KeyEvent.KEYCODE_BACK && event.isLongPress()) {
//do something else
System.exit(0);
return true;
}
return false;
}
代碼很簡單,如果按下了返回鍵且是長按,則退出。
方案二
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
Toast.makeText(this, "長按返回鍵退出", Toast.LENGTH_SHORT).show();
} else if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 2) {
//do something else
System.exit(0);
}
return false;
}
推薦本方案,可以修改else if中event.getRepeatCount()==的次數(shù)來修改長按的時間,event.getRepeatCount() 為0時代表單擊了一次,當(dāng)次數(shù)>=1時就代表長按了,值越大,說明按的時間越長。
之所以推薦本方案,因為可以在第一次點擊返回鍵的時候提醒用戶。
后記
本來準(zhǔn)備多整理些資料一起發(fā)出來,掘金剛剛在內(nèi)測發(fā)布工具,這里就手寫一篇試試感覺如何,體驗還是很棒的。以下是個人意見:
優(yōu)點:
- 配色漂亮
- 界面干凈,寫作比較專注,適合有經(jīng)驗的老手
- 響應(yīng)快,對MarkDown語法的細(xì)節(jié)處理的不錯
缺點:
- 界面沒有引導(dǎo),新手會蒙圈吧
- 左邊的寫作區(qū)的配色是暗色,沒有可選性(難道根據(jù)時間換白色和黑色主題?)
- 不支持流程圖等高級功能
總的來說,基本功能都是有的,界面比較干凈,這個是優(yōu)點也是缺點了,相對而言,更適合把MarkDown語法熟記于心的人。
最后,來個配圖看看寫作界面:

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
- Android Listview中顯示不同的視圖布局詳解及實例代碼
- Android實現(xiàn)ImageView陰影和圖層效果
- 詳解Android中的MVP架構(gòu)分解和實現(xiàn)
- android使用AsyncTask實現(xiàn)多線程下載實例
- android多種滑動沖突的解決方案
- 很實用的Android日期計算類
- Android實現(xiàn)圖片上傳功能
- Android 中StringBuffer 和StringBuilder常用方法
- Android獲取聯(lián)系人姓名和電話代碼
- Android引導(dǎo)頁面的簡單實現(xiàn)
- android基于dialog實現(xiàn)等待加載框示例
相關(guān)文章
Android OnFocuChangeListener焦點事件詳解
這篇文章主要為大家詳細(xì)介紹了Android OnFocuChangeListener焦點事件,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-09-09
Android開發(fā)AsmClassVisitorFactory使用詳解
這篇文章主要為大家介紹了Android開發(fā)AsmClassVisitorFactory使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-06-06
Android通過AlarmManager類實現(xiàn)簡單鬧鐘功能
這篇文章主要為大家詳細(xì)介紹了Android通過AlarmManager類實現(xiàn)簡單鬧鐘功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-06-06
Android編程實現(xiàn)的首頁左右滑動切換功能示例
這篇文章主要介紹了Android編程實現(xiàn)的首頁左右滑動切換功能,涉及Android事件監(jiān)聽及響應(yīng)相關(guān)操作技巧,需要的朋友可以參考下2017-07-07
Android LayerDrawable超詳細(xì)講解
一個LayerDrawable是一個可以管理一組drawable對象的drawable。在LayerDrawable的drawable資源按照列表的順序繪制,所以列表的最后一個drawable繪制在最上層2022-11-11
Android 中 EventBus 的使用之多線程事件處理
這篇文章主要介紹了Android 中 EventBus 的使用之多線程事件處理的相關(guān)資料,需要的朋友可以參考下2015-11-11
6步輕松實現(xiàn)兩個listView聯(lián)動效果
這篇文章主要為大家詳細(xì)介紹了教大家通過6步輕松實現(xiàn)兩個listView聯(lián)動效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04

