兩次點選BACK鍵退出應用的效果
首先是監聽返回鍵的方法,有兩種:
- 在Activity中可以重寫如下方法
public void onBackPressed() { Log.i(TAG,"返回鍵被點選了。"); //需要遮蔽返回鍵註釋此行程式碼即可 super.onBackPressed();//此方法自動呼叫finish() }
-
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { Log.i(TAG,"返回鍵被點選了。"); //需要遮蔽返回鍵返回false即可 //return false; return super.onKeyDown(keyCode, event); }
實現:
參考:public class MainActivity extends AppCompatActivity { public static String TAG = "MainActivity"; private boolean goBack = false; private boolean hasTask = false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } Timer timer = new Timer(); TimerTask task = new TimerTask() { @Override public void run() { hasTask = true; goBack = true; } }; @Override public void onBackPressed() { Log.i(TAG, "返回鍵被點選了。"); if (goBack) { goBack = true; Toast.makeText(getApplicationContext(), "再按一次返回鍵退出", Toast.LENGTH_SHORT).show(); if (!hasTask) { timer.schedule(task, 3000); } } else { super.onBackPressed(); } }
private long exitTime = 0; @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){ if((System.currentTimeMillis()-exitTime) > 2000){ Toast.makeText(getApplicationContext(), "再按一次退出程式", Toast.LENGTH_SHORT).show(); exitTime = System.currentTimeMillis(); } else { finish(); System.exit(0); } return true; } return super.onKeyDown(keyCode, event); }
相關文章
- AndroidStudio點選兩次返回鍵,退出APPAndroidAPP
- Cordova + Vue 實現點選兩次退出應用Vue
- Android主介面連續兩次點選物理返回鍵退出應用功能實現Android
- android短影片開發,點選兩次實現不同點選效果的實現方式Android
- Android之點選兩次才響應onclick方法Android
- 如何一鍵退出所有應用程式?
- QuitAll for Mac(應用程式一鍵退出)UIMac
- 點選Enter鍵表切換焦點效果
- 點選label執行兩次的bug
- JavaScript實用的表格行滑鼠點選高亮效果JavaScript
- weex生成的單頁應用嵌入app中,點選物理返回鍵時如何返回上一個路由頁面,而不是直接退出單頁應用,回到原生app頁面APP路由
- android 再按一次退出應用 出現閃屏 重啟Android
- 註冊登入要點選兩次終極方案
- 針對IOS頁面縮放,需要點選兩次才能選中iOS
- Android Button 點選效果Android
- iOS全埋點解決方案-應用退出和啟動iOS
- MAUI Blazor學習16-連續按BACK退出APPUIBlazorAPP
- 點選一百萬次
- Item點選水波紋效果
- Input元件無點選效果元件
- 點選頁面愛心效果
- RecyclerView點選新增波紋效果View
- 卡片跳轉快應用指定頁面,如何點返回直接退出快應用回到卡片
- 應用程式無響應?如何在Mac上強制退出應用Mac
- 點選連結取消跳轉效果
- 點選連結背景變色效果
- Jetapck Compose 去除點選水波紋效果
- Mac快速退出應用程式工具:Quit AllMacUI
- SVG點選實現動態放大的圓效果SVG
- 資料跟蹤應該是選擇加入而不是選擇退出
- 微信小程式自定義tabbar圖示切換點選兩次才選中解決方法微信小程式tabBar
- JavaScript點選按鈕彈出層效果JavaScript
- html中javascript點選事件後顯示或隱藏某些元素時需要點選兩次才生效的原因分析和最佳化HTMLJavaScript事件
- 蘋果mac電腦怎麼退出無響應卡死的應用程式蘋果Mac
- OWASP重點突出的Web應用程式中10大關鍵漏洞Web
- CSS點選隱藏和顯示div效果CSS
- jQuery點選滑出層效果程式碼例項jQuery
- 關於 Angular 應用對瀏覽器 Back 按鈕支援問題的討論Angular瀏覽器
- jQuery頂部帶有選項卡的焦點圖效果jQuery