`
fypz
  • 浏览: 2722 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

按后退键退出Android程序

阅读更多
主要的目的是按后退键的时候,让程序能够退出。

实现起来的思路:

1.捕获后退键被按了这个事件。

       
@Override
        public boolean onKeyDown(int keyCode, KeyEvent event)  {
            if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { 
            //按下的如果是BACK,同时没有重复
              //DO SOMETHING	
            }

            return super.onKeyDown(keyCode, event);
        } 

2.在后退键被按的事件里退出程序

这里也有两种方式:直接退出程序,或者退出到主屏幕。

1)退出程序的方法有两种:

android.os.Process.killProcess(android.os.Process.myPid()); 


System.exit(0); 


我试了这两种方法,但是奇怪的是,在1.5模拟器下,程序确实被KILL了,但是马上Android又重新启动了程序。

另外还有一种方式,比较友好,可以释放资源,我觉得可行,就是实现起来麻烦一点,需要逐级退出,重写onResume()方法:

 @Override
protected void onResume() {
    super.onResume();
    if(mExiting){
        finish();
    }
}


2)退出到主屏幕
这个比较简单,新建一个主屏幕的Intent就可以。

Intent home = new Intent(Intent.ACTION_MAIN); 
    home.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
    home.addCategory(Intent.CATEGORY_HOME); 
    startActivity(home);




我最后采用了按后退键回到主屏幕的方式,实现代码如下:



  
@Override
 public boolean onKeyDown(int keyCode, KeyEvent event) {
  if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { // 按下的如果是BACK,同时没有重复
   Intent home = new Intent(Intent.ACTION_MAIN);
   home.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
   home.addCategory(Intent.CATEGORY_HOME);
   startActivity(home);
  }
  return super.onKeyDown(keyCode, event);
 }


0
1
分享到:
评论
4 楼 itstarting 2011-10-22  
这个思路不对

默认按键就可以退出了,你这是多此一举
我按照这个打算做一个“按两次返回则退出”的,搞不定,就换了另一个更简单的思路
3 楼 hanwei59 2010-09-19  
我一直onDestroy里finish()。。。
但是每次看起来貌似都退出了。
ps:很多软件是按回退键弹出确认是否退出。
2 楼 fypz 2010-09-19  
没有专门研究SDK2.2下的退出程序,上面的程序应该一样可行,但2.2下新增加了一个捕获后退按钮的事件,可以直接在这个事件里写退出程序。
1 楼 laorer 2010-09-19  
有没有试过 sdk2.2下的退出程序?

相关推荐

    Android 再按一次后退键退出应用程序 源码

    Android 返回键退出代码,第一次提示用户再按一次返回键退出,两秒钟内再按一次则退出程序,否则认为用户取消了退出操作!下下来就可以用,绝对好用哦~~~!!

    实现“两次按返回键退出程序”的效果

    ### 实现“两次按返回键退出程序”的效果 在安卓应用开发中,有时为了提高用户体验,我们会设置一种机制,即用户需要连续点击两次返回键才能退出应用。这种设计可以防止用户误操作导致应用意外关闭。下面我们就来...

    Android中实现再按一次返回键退出应用程序

    总结来说,"Android中实现再按一次返回键退出应用程序"的核心是通过重写Activity的onKeyDown()方法,监听返回键事件,并结合时间判断来决定是否真的退出应用。这种设计体现了Android应用开发中的用户体验和交互设计...

    Android 点击两次返回键退出程序

    在Android系统中,点击两次返回键退出程序是一种常见的应用安全机制,目的是防止用户意外地退出正在使用的应用。这种设计能够确保用户在误触返回键时,不会立即退出应用,而是需要再次确认。以下是对这个主题的详细...

    android两次按返回键退出程序实现

    ### Android 两次按返回键退出程序实现 在Android开发中,有时我们需要实现这样一个功能:当用户连续两次按下返回键时,应用才退出。这种设计的主要目的是为了提高用户体验,避免用户因误触返回键而导致应用程序...

    Android 按后退键退出Android程序的实现方法

    主要目的是按后退键的时候,让程序能够退出。 实现起来的思路: 1.捕获到后退键事件就触发。 代码如下:@Override public boolean onKeyDown(int keyCode, KeyEvent event) { //按下的如果是BACK,同时没有重复 ...

    安卓Android源码——返回键退出程序的两种方式.rar

    在安卓(Android)开发中,实现应用程序通过返回键(back key)退出是一个常见的需求。本压缩包中的资源可能包含了两种不同的方法来实现这一功能。以下是关于这个主题的详细讲解: 一、第一种方式:重写Activity的...

    安卓Android源码——返回键退出程序的两种方式.zip

    在安卓(Android)系统中,开发应用程序时,处理返回键以退出程序是常见的需求。本文将深入探讨两种主要的方法,帮助开发者理解并实现这一功能。 首先,我们要知道,Android应用程序通常由多个活动(Activity)组成...

    Android 实现按两次返回键退出程序(两种方法)

    Android 实现按两次返回键退出程序(两种方法) 第一种方法: // 是否退出程序 private static Boolean isExit = false; // 定时触发器 private static Timer tExit = null; 第二种方法: public boolean ...

    Android按两次返回退出应用的代码

    以下是一个简单的示例代码,展示了如何在Android中实现按两次返回键退出应用: ```java private long firstBackPressTime = 0; private static final int TIME_INTERVAL = 2000; // 2秒的时间间隔 @Override ...

    黑马程序员之android_点击返回键退出程序的方法

    #### 方法一:再按一次返回键退出程序 这种方法是通过监听返回键的点击事件来实现的。当用户第一次点击返回键时,系统会提示“再按一次退出程序”,并在一段时间(例如2秒钟)内等待用户的第二次点击。如果在这段...

    点击两下返回键退出当前应用

    在Android应用开发中,"点击两下返回键退出当前应用"是一种常见的用户交互设计,它提高了用户体验,使得用户能够快速且直观地退出应用程序。这个DEMO实现的功能是当用户连续两次按下返回键时,程序会识别到这一行为...

    Android应用源码之返回键退出程序的两种方式.zip

    在Android应用开发中,用户经常会遇到使用返回键退出程序的需求。这个压缩包文件"Android应用源码之返回键退出程序的两种方式.zip"显然包含了关于如何实现这一功能的示例代码。在这里,我们将深入探讨这两种常见的...

    android 按两次返回键退出

    我们可以在很多应用中都能看到按两次返回键退出 , 其实这个功能实现很容易, 下面就是实现的代码 , 把它放到你的程序中你的程序就能按两次返回键退出啦 , 这个功能是为了避免误点而把程序退出了 ,给你的程序也...

    Android 双击返回键退出程序的方法总结

    Android 双击返回键退出程序的方法总结 Android 双击返回键退出程序是指在 Android 应用程序中,通过双击返回键退出当前程序的方法。这种方法可以提高用户体验,避免用户不小心点击返回键退出程序。下面是一些常见...

    Android按两次返回键退出应用核心代码

    在Android开发中,为了提升用户体验,开发者经常会在应用程序中实现“按两次返回键退出应用”的功能。这种设计可以有效地避免用户因误触返回键而导致应用意外关闭的情况。本文将详细介绍该功能的核心代码实现原理、...

Global site tag (gtag.js) - Google Analytics