Android 再按一次返回键退出程序实现思路

时间:2023-01-07 12:26:36 

用户退出应用前给出一个提示是很有必要的,因为可能是用户并不真的想退出,而只是一不小心按下了返回键,大部分应用的做法是在应用退出去前给出一个Dialog,我觉得这样不太友好,用户还得移动手指去按dialog中的按钮。个人觉得“再按一次返回键退出程序”是best practice,实现也很简单,直接上代码:


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);
}
标签:返回键,退出
0
投稿

猜你喜欢

  • Java多线程之同步锁-lock详解

    2023-12-16 14:40:08
  • Unity创建平铺网格地图的方法

    2022-07-06 16:05:49
  • c#实现KTV点歌系统

    2023-10-17 23:54:56
  • 关于springboot中对sqlSessionFactoryBean的自定义

    2022-12-09 06:05:09
  • jdk线程池的实现

    2023-07-05 18:44:35
  • Unity通用泛型单例设计模式(普通型和继承自MonoBehaviour)

    2023-08-24 14:53:28
  • 浅析Java异常处理中断言的使用

    2023-07-05 23:50:03
  • Java 线程池ThreadPoolExecutor源码解析

    2022-06-28 09:13:59
  • SpringBoot中获取profile的方法详解

    2023-11-19 18:05:00
  • SpringBoot注解梳理(小结)

    2023-11-10 13:27:19
  • 基于C#实现简易的键盘记录器

    2023-07-02 21:32:41
  • springboot整合JSR303校验功能实现代码

    2023-10-11 21:46:25
  • JUC循环屏障CyclicBarrier与CountDownLatch区别详解

    2021-11-17 10:40:08
  • Android自定义钟表特效

    2022-09-11 00:29:14
  • java中接口(interface)及使用方法示例

    2021-10-11 10:55:12
  • 从汇编码分析java对象的创建过程(推荐)

    2023-06-09 18:05:17
  • c# 中文转拼音without CJK

    2023-06-08 23:59:31
  • Java中static变量作用和用法详解

    2021-11-09 12:01:04
  • SpringMVC学习之JSTL条件行为和遍历行为详解

    2021-08-19 08:56:09
  • C#中英文混合字符串截取函数

    2023-01-19 06:02:55
  • asp之家 软件编程 m.aspxhome.com