android开发再按一次退出应用

来源:互联网 发布:中国买俄罗斯石油知乎 编辑:程序博客网 时间:2024/05/16 10:20

在android开发中默认的方法是点击退出时直接退出应用,我们为了用户更好体验效果,通过会点击一次后提示“再按一次退出程序”事件,那么这个是如何实现的呢,其实很简单,我们采用一个Handler线程,判断点击次数,当点击一次时,弹出提示,点击第二次的时候则退出应用程序,代码如下所示:

private static final int MSG_EXIT = 1;
private static final int MSG_EXIT_WAIT = 2;
private static final long EXIT_DELAY_TIME = 2000;
private Handler mHandle = new Handler() {
   public void handleMessage(Message msg) {
       switch(msg.what) {
           case MSG_EXIT:
               if(mHandle.hasMessages(MSG_EXIT_WAIT)) {
                   finish();
               } else {    
                   Toast.makeText(MainActivity.this, "再按一次返回键退出", Toast.LENGTH_SHORT).show();
                   mHandle.sendEmptyMessageDelayed(MSG_EXIT_WAIT, EXIT_DELAY_TIME);
               }
               break;
           case MSG_EXIT_WAIT:
               break;
       }
   }
};
public boolean onKeyDown(int keyCode, KeyEvent event) {
   if(KeyEvent.KEYCODE_BACK == keyCode) {
       mHandle.sendEmptyMessage(MSG_EXIT);
       return true;
   }
   return super.onKeyDown(keyCode, event);
}

1 0
原创粉丝点击