Android 長(zhǎng)按返回健退出
創(chuàng)新互聯(lián)公司主要從事成都做網(wǎng)站、網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)韶山,10余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專(zhuān)業(yè),歡迎來(lái)電咨詢建站服務(wù):13518219792
背景
平常比較常見(jiàn)的都是一定時(shí)間間隔內(nèi)按兩次返回鍵來(lái)退出應(yīng)用,并且第一次點(diǎn)擊會(huì)有相應(yīng)的提示,網(wǎng)上資料比較多,這里寫(xiě)一下,長(zhǎng)按返回鍵退出。
實(shí)現(xiàn)
實(shí)現(xiàn)的方案常用的有兩個(gè):
重寫(xiě)dispatchKeyEvent(KeyEvent event)方法
重寫(xiě)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; }
代碼很簡(jiǎn)單,如果按下了返回鍵且是長(zhǎng)按,則退出。
方案二
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { Toast.makeText(this, "長(zhǎng)按返回鍵退出", 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ù)來(lái)修改長(zhǎng)按的時(shí)間,event.getRepeatCount() 為0時(shí)代表單擊了一次,當(dāng)次數(shù)>=1時(shí)就代表長(zhǎng)按了,值越大,說(shuō)明按的時(shí)間越長(zhǎng)。
之所以推薦本方案,因?yàn)榭梢栽诘谝淮吸c(diǎn)擊返回鍵的時(shí)候提醒用戶。
后記
本來(lái)準(zhǔn)備多整理些資料一起發(fā)出來(lái),掘金剛剛在內(nèi)測(cè)發(fā)布工具,這里就手寫(xiě)一篇試試感覺(jué)如何,體驗(yàn)還是很棒的。以下是個(gè)人意見(jiàn):
優(yōu)點(diǎn):
缺點(diǎn):
總的來(lái)說(shuō),基本功能都是有的,界面比較干凈,這個(gè)是優(yōu)點(diǎn)也是缺點(diǎn)了,相對(duì)而言,更適合把MarkDown語(yǔ)法熟記于心的人。
最后,來(lái)個(gè)配圖看看寫(xiě)作界面:
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
網(wǎng)頁(yè)名稱(chēng):Android兩種方法實(shí)現(xiàn)長(zhǎng)按返回健退出
網(wǎng)站路徑:http://aaarwkj.com/article30/pdejpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、標(biāo)簽優(yōu)化、網(wǎng)站排名、響應(yīng)式網(wǎng)站、網(wǎng)站內(nèi)鏈、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)