$Android连续按返回键两次实现退出程序

  思路:重写Activity的onKeyDown方法,判断按键是不是返回键,如果是,则再判断按下的时间和上次按下的时间之间的差值(毫秒数)是不是大于2000,如果不大于,则用finish()方法结束程序。Demo如下:

 1 import android.app.Activity;
 2 import android.os.Bundle;
 3 import android.view.KeyEvent;
 4 import android.widget.Toast;
 5  
 6 public class TestActivity extends Activity {
 7         private long mExitTime;  //存在时间,初值为0,用于和当前时间(毫秒数)做差值
 8      
 9     @Override
10         public void onCreate(Bundle savedInstanceState) {
11                 super.onCreate(savedInstanceState);
12                 setContentView(R.layout.main);
13  
14         }
15     
16     @Override     
17         public boolean onKeyDown(int keyCode, KeyEvent event) {
18                 if (keyCode == KeyEvent.KEYCODE_BACK) {
19                         if ((System.currentTimeMillis() - mExitTime) > 2000) {  //mExitTime的初始值为0,currentTimeMillis()肯定大于2000(毫秒),所以第一次按返回键的时候一定会进入此判断
20 21                                 Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
22                                 mExitTime = System.currentTimeMillis();
23  
24                         } else {
25                                 finish();
26                         }
27                         return true;
28                 }
29                 return super.onKeyDown(keyCode, event);
30         }
31 }

 

转载于:https://www.cnblogs.com/jiayongji/p/5374088.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/418691.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端学习(1864)vue之电商管理系统电商系统之绘制登录表单区域带icon的输入框

修改头像位置 3目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vueVue.use(Router)export default new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login}] }) login.vue <templat…

前端学习(1865)vue之电商管理系统电商系统之实现表单的数据绑定

修改头像位置 3目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vueVue.use(Router)export default new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login}] }) login.vue <templat…

前端学习(1866)vue之电商管理系统电商系统之登录退出实现表单的数据验证

修改头像位置 3目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vueVue.use(Router)export default new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login}] }) login.vue <templat…

前端学习(1867)vue之电商管理系统电商系统之登录退出实现表单的重置

修改头像位置 3目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vueVue.use(Router)export default new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login}] }) login.vue <templat…

前端学习(1868)vue之电商管理系统电商系统之登录退出实现表单的预先认证

修改头像位置 3目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vueVue.use(Router)export default new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login}] }) login.vue <templat…

前端学习(1869)vue之电商管理系统电商系统之配置axios发出登录请求

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vueVue.use(Router)export default new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login}] }) login.vue <template><div c…

前端学习(1870)vue之电商管理系统电商系统之配置message全局弹框组件

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vueVue.use(Router)export default new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login}] }) login.vue <template><div c…

前端学习(1871)vue之电商管理系统电商系统之路由导航守卫控制页面访问权限

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vue Vue.use(Router)export default new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login},{…

cd命令

当我们看到一个文件夹&#xff0c;想进去瞧一瞧是什么时&#xff0c;cd命令就能满足你的好奇心。 想进去gg里面瞧一瞧&#xff0c;ok。 eg&#xff1a;cd gg 结果如下 好了&#xff0c;进入到了gg里面&#xff0c;我们要看里面的dx我用到了ll命令&#xff0c;这个命令可以显示里…

强连通分量

强连通分量是有向图中的概念&#xff0c;就是每一个顶点到其它点都由路径&#xff0c;注意有方向. 有向图强连通分量&#xff1a;在有向图G中&#xff0c;如果两个顶点vi,vj间&#xff08;vi>vj&#xff09;有一条从vi到vj的有向路径&#xff0c;同时还有一条从vj到vi的有向…

前端学习(1872)vue之电商管理系统电商系统之完善登录之后的操作

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vueVue.use(Router)const router new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login},{pat…

前端学习(1873)vue之电商管理系统电商系统之实现退出功能

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vueVue.use(Router)const router new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login},{pat…

深入理解构造函数和原型链

使用构造函数初始化对象的过程function Base(){} //函数声明var basenew Base() //对象初始化执行Base()的过程&#xff1a; 创建一个名为Base的function对象&#xff1a; 执行function Base(){函数体}本质上相当于var Basenew Function("函数体")&#xff1b;所以Ba…

前端学习(1874)vue之电商管理系统电商系统之处理项目中eslint语法报错

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vueVue.use(Router)const router new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login},{pat…

Android一个自定义的进度环:ProgressChart

源代码及可执行文件下载地址:http://files.cnblogs.com/rainboy2010/ProgressChart.zip 因项目需要,自己尝试定义了一个进度环,用于显示进度,实现效果如下: 主要代码如下: public class ProgressChart extends View {private Context context;//圆环背景画笔private Paint pain…

前端学习(1876)vue之电商管理系统电商系统之整体布局

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vueVue.use(Router)const router new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login},{pat…

0414-复利计算再升级

目录 项目简介更新内容设计概要估算工作量任务分配github地址演示总结一、项目简介 项目名复利计算5.1版本号5.1开发语言java开发工具eclipse、IDEA、mysql更新内容功能完善开发人员颜文生、林集团二、更新内容 界面美化 改善交互 三、概要设计 加载图片美化界面&#xff0c;利…

前端学习(1874)vue之电商管理系统电商系统之修改element-ui组件的按需导入

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vueVue.use(Router)const router new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login},{pat…

前端学习(1877)vue之电商管理系统电商系统之头部布局

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vueVue.use(Router)const router new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login},{pat…

前端学习(1878)vue之电商管理系统电商系统之左侧菜单布局

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vueVue.use(Router)const router new Router({routes:[{path:/,redirect:/login},{path:/login,component:Login},{pat…