Android再按一次返回键退出程序的实现
16lz
2021-01-26
实现这个功能的原理就是比较两次按下返回键的时间间隔,如果大于设定的时间间隔(比如2秒),则提示再按一次返回键退出,否则直接退出程序,代码如下:
package com.example.test;import android.os.Bundle;import android.app.Activity;import android.view.KeyEvent;import android.widget.Toast;public class MainActivity extends Activity {//上次按下返回键的系统时间private long lastBackTime = 0;//当前按下返回键的系统时间private long currentBackTime = 0; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { //捕获返回键按下的事件 if(keyCode == KeyEvent.KEYCODE_BACK){ //获取当前系统时间的毫秒数 currentBackTime = System.currentTimeMillis(); //比较上次按下返回键和当前按下返回键的时间差,如果大于2秒,则提示再按一次退出 if(currentBackTime - lastBackTime > 2 * 1000){ Toast.makeText(this, "再按一次返回键退出", Toast.LENGTH_SHORT).show(); lastBackTime = currentBackTime; }else{ //如果两次按下的时间差小于2秒,则退出程序 finish(); } return true; } return super.onKeyDown(keyCode, event); }}程序运行截图如下:
更多相关文章
- Android(安卓)View事件派发机制详解与源码分析
- 【070】Android(安卓)中相关功能的实现代码
- Android(安卓)中文 API (29) —— CompoundButton
- android 获取sim卡运营商信息(转)
- Android学习笔记•从零开始•第二天•Intent-穿梭在Activity之间
- Android(安卓)Back键点击两次退出应用详解及实现方法总结
- Android(安卓)中关于Environment类的总结
- Android(安卓)WIFI扫描时延
- [转]android 网络编程 HttpGet类和HttpPost类使用详解