单击两次返回按钮退出应用程序

 1 package com.anjoyo.test;
 2 
 3 import android.app.Activity;
 4 import android.os.Bundle;
 5 import android.view.KeyEvent;
 6 import android.widget.Toast;
 7 
 8 public class TestActivity extends Activity {
 9         private long mExitTime;
10 
11         public void onCreate(Bundle savedInstanceState) {
12                 super.onCreate(savedInstanceState);
13                 setContentView(R.layout.main);
14 
15         }
16         
17        public boolean onKeyDown(int keyCode, KeyEvent event)
18     // 重写onKeyDown方法,括号解释(int型的监听键盘的按键值,键盘事件型的  事件)
19             {
20                 if (keyCode == KeyEvent.KEYCODE_BACK) // KeyEvent.KEYCODE_BACK 表示键盘返回事件。
21                 {
22                         if ((System.currentTimeMillis() - mExitTime) > 2000) 
23         //System.currentTimeMillis() 获取系统事件(以毫秒为单位)
24                         {
25                                 //Object mHelperUtils;
26                                 Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
27                                 mExitTime = System.currentTimeMillis();//返回当前的系统时间(以毫秒为单位)
28 
29                         } else 
30                         {
31                                 this.finish();
32                         }
33                         return true;
34 // 只有返回true才能再执行一次 第一个(If)进行再一次的(System.currentTimeMillis() - mExitTime) > 2000比较
35                 } 
36                 return super.onKeyDown(keyCode, event);
37         }
38 }


如是退出 跳转之后的页面,记得现在 之前的Activity中加上 this.finish ();避免两次按返回键之后变成放回到之前的Activity中。而不是退出应用程序

posted @ 2012-12-23 22:02  1小松  阅读(235)  评论(0编辑  收藏  举报