第一步:声明一个标记变量用来判断是否需要退出
第二步:重写handlerMessage方法
第三步:自定义一个exit()方法给标记变量赋值
第四步:重写onKeyDown方法
1 private static boolean isExit=false; 2 //按两次退出 3 Handler mHandler=new Handler(){ 4 @Override 5 public void handleMessage(Message msg) { 6 super.handleMessage(msg); 7 isExit=false; 8 } 9 };10 11 12 @Override13 public boolean onKeyDown(int keyCode, KeyEvent event) {14 if(keyCode== KeyEvent.KEYCODE_BACK){15 exit();16 return false;17 }18 return super.onKeyDown(keyCode, event);19 }20 21 private void exit(){22 if(!isExit){23 isExit=true;24 Toast.makeText(getApplicationContext(), "再按一次退出程序", Toast.LENGTH_SHORT).show();25 //利用handler延迟发送更改状态信息26 mHandler.sendEmptyMessageDelayed(0,2000);27 }else {28 finish();29 System.exit(0);30 }31 }
posted on 2016-09-01 14:17 阅读( ...) 评论( ...)