安卓点击两次返回键退出程序

退出部分的代码:

 1     private void exit() {
 2         if (!isExit) {
 3             isExit = true;
 4             Toast.makeText(getApplicationContext(), "再按一次退出程序",
 5                     Toast.LENGTH_SHORT).show();
 6             // 利用handler延迟发送更改状态信息
 7             mHandler.sendEmptyMessageDelayed(0, 2000);
 8         } else {
 9             Utils.logout(WalkMainActivity.this);
10             Utils.disableBluetooth(this);
11             finish();
12             System.exit(0);
13            // android.os.Process.killProcess(android.os.Process.myPid()) ;
14         }
15     }

获取点击按键事件:

 1 @Override
 2     public boolean onKeyDown(int keyCode, KeyEvent event) {
 3         if (keyCode == KeyEvent.KEYCODE_BACK) {
 4             Utils.hiddenProgram(getApplicationContext());
 5         }
 6         if (keyCode == KeyEvent.KEYCODE_MENU) {
 7             drawerUtil.openCloseDrawerLayout();
 8         }
 9         return super.onKeyDown(keyCode, event);
10     }

还有一个就是mHandler部分的代码。

参考资料:http://tjlibaoh.blog.163.com/blog/static/2112264132012984518743/

时间: 2024-10-08 21:27:53

安卓点击两次返回键退出程序的相关文章

安卓---连续点击两次返回键退出程序---二级界面的退出程序

法一:实现方式,通过记录按键时间计算时间差实现: import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.widget.Toast; public class MainActivity extends Activity { private long exitTime = 0; @Override protected void onCreate(Bundl

点击两次返回键退出程序

总的来说,实则是使用onKeyDown方法进行监听按钮点击事件,并作出相应处理,一共有两种方式实现该功能. 第一种是使用消息传递机制,使用Handle()传递消息的间隔时间内若进行了再次点击返回键则退出程序 代码如下: 1 private static boolean isExit = false; 2 3 Handler mHandler = new Handler(){ 4 5 @Override 6 public void handleMessage(Message msg) { 7 //

android实现点击两次返回键实现退出功能

在使用android平台的app是我们经常会发现点击两次返回键会提示是否退出的功能,下面讲讲此功能是如何实现的(此方法比较简单) 第一种方法是对系统返回键进行监听,定义一个变量记录按键时间,通过计算时间差来实现该功能,代码如下: //退出时的时间private long mExitTime;//对返回键进行监听@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCO

Android_按两次返回键退出程序和长按返回键退出程序

以上两个功能主要是参考了一下博客的: http://blog.csdn.net/chenshijun0101/article/details/7682210 http://blog.csdn.net/winlinking/article/details/6596455 方法一: 按两次返回键退出程序: Activity: public class Back2FinishAppActivity extends Activity { Exit exit = new Exit(); /** Calle

WP8.1 双击两次返回键退出程序

在实现Windows Phone上实现点按两次返回键退出程序, 一种方法是使用Coding4Fun提供的ToastPrompt, 使用方法如下: 1. 安装引用, 打开Package Manager Console. 输入下列命令以安装 Coding4Fun.Toolkit.Controls Install-Package Coding4Fun.Toolkit.Controls 输入下列命令以安装 GalaSoft.MvvmLight.Messaging Install-Package Mvvm

【转】Android实现点击两次返回键退出

在做安卓应用是我们经常要判断用户对返回键的操作,一般为了防止误操作都是在用户连续按下两次返回键的时候提示用户是否退出应用程序. 第一种实现的基本原理就是,当按下BACK键时,会被onKeyDown捕获,判断是BACK键,则执行exit方法. 在exit方法中,会首先判断isExit的值,如果为false的话,则置为true,同时会弹出提示,并在2000毫秒(2秒)后发出一个消息,在 Handler中将此值还原成false.如果在发送消息间隔的2秒内,再次按了BACK键,则再次执行exit方法,此

Android实现点击两次返回键退出

在做android应用是我们经常要判断用户对返回键的操作,一般为了防止误操作都是在用户连续按下两次返回键的时候提示用户是否退出应用程序. 原理: 监听back键的按下,需要重写onKeyDown()方法,判断两次按下的时差,如果小于2秒,就退出,反之亦然. 第一种: package com.example.appexitdemo; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import a

【Android笔记】Android中实现“点击两次返回键退出”

用户退出应用前给出一个提示是很有必要的,因为可能是用户并不真的想退出,而只是一不小心按下了返回键,大部分应用的做法是在应用退出去前给出一个Dialog,我觉得这样不太友好,用户还得移动手指去按dialog中的按钮.个人觉得“再按一次返回键退出程序”是best practice,实现也很简单,直接上代码: 1 private long exitTime = 0; 2 3 @Override 4 public boolean onKeyDown(int keyCode, KeyEvent event

自定义Back返回键(实现按两次返回键退出程序)

实现机制:当用户点击物理返回键时,Activity会调用onBackPressed(),只需在Activity中复写该方法即可 以下是代码实现: 1 package com.example.qjm3662.service_learn; 2 3 import android.content.ComponentName; 4 import android.content.Intent; 5 import android.content.ServiceConnection; 6 import andr