Android 重写返回键

下面是几种重写返回键 的方法


//第一种
public boolean onKeyDown(int keyCode, KeyEvent event) {

// 按下键盘上返回按钮  
if (keyCode == KeyEvent.KEYCODE_BACK) {  

  new AlertDialog.Builder(this)  
  .setMessage("确定退出系统吗?")  
  .setNegativeButton("取消",  
   new DialogInterface.OnClickListener() {
     public void onClick(DialogInterface dialog,
     int which) {  
     }  
   })  
  .setPositiveButton("确定",  
   new DialogInterface.OnClickListener() {  
     public void onClick(DialogInterface dialog,
     int whichButton) {
   finish();  
     }  
   }).show();  

  return true;  
} else {  
  return super.onKeyDown(keyCode, event);
}  
}  

   //直接退出程序
@Override 
protected void onDestroy() {  
    super.onDestroy();  
    // 或者下面这种方式  
    //System.exit(0);  
    //建议用这种  
    android.os.Process.killProcess(android.os.Process.myPid());
}



//第二种
@Override
 public boolean onKeyDown(int keyCode, KeyEvent event) {
            if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
                     //TODO something
                    return true;
              }
              return super.onKeyDown(keyCode, event);
 }



//第三种
@Override
 public void onBackPressed() {
           //TODO something
          super.onBackPressed();
 }

你可能感兴趣的:(工具,返回键,android,onKeyDown)