为了账号安全,请及时绑定邮箱和手机立即绑定

Android中实现按两次返回按钮退出应用

标签:
Android

原理很简单:定义一个TimerTask定时器和一个是否退出程序的标志isExit。第一次按返回键时,赋值isExit标志为True,开启定时器TimerTask任务,两秒钟后赋值isExit标志为false,所以用户在这两秒钟之内,再按一次返回键,则退出程序。否则定时器TimerTask任务执行,赋值isExit标志为false。

private static Boolean isExit = false;// 是否退出程序
 private static Timer tExit = null;// 定时触发器

 public boolean onKeyUp(int keyCode, KeyEvent event) {

  if (keyCode == KeyEvent.KEYCODE_BACK) {
   if (isExit == false) {
    isExit = true;
    if(tExit != null) {
     tExit.cancel();//将原任务从队列中移除
    }
    //重新实例一个定时器
    tExit = new Timer();
    TimerTask task = new TimerTask() {
     @Override
     public void run() {
      isExit = false;
     }
    };
    Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
    //延时两秒触发task任务
    tExit.schedule(task, 2000);
   } esle {
    finish();
    System.exit(0);
   }
   return true;
  }
  return super.onKeyUp(keyCode, event);
 }

原文链接:http://www.apkbus.com/blog-664680-59107.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消