在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); }
欢迎关注技术公众号,微信号搜索ColorfulCode 代码男人
分享技术文章,投稿分享,不限技术种类,不限技术深度,让更多人因为分享而受益。