ActivityGroup中监听返回按键

如果你想使用ActivityGroup来统一管理Activity的话,当然首先这是一种很好的方法,但是如果你想在ActivityGroup里面拦截返回按键来进行统一管理的话,直接覆写onKeyDown方法是行不通的了哦,但是你可以覆写dispatchKeyEvent方法来实现,例如,现在我点击返回按钮要提示是否退出程序,代码如下:

 1 @Override  
 2 public boolean dispatchKeyEvent(KeyEvent event) {  
 3 if (event.getKeyCode() == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP) {  
 4 AlertDialog.Builder builder = new AlertDialog.Builder(this);  
 5 builder.setTitle("提示");  
 6 builder.setMessage("您确定要退出吗?");  
 7 builder.setPositiveButton("退出",  
 8 new DialogInterface.OnClickListener() {  
 9   
10 @Override  
11 public void onClick(DialogInterface dialog, int which) {  
12 // 退出程序  
13 Intent exitIntent = new Intent(Intent.ACTION_MAIN);  
14 exitIntent.addCategory(Intent.CATEGORY_HOME);  
15 startActivity(exitIntent);  
16 YeedoUIActivity.this.finish();  
17 }  
18 });  
19 builder.setNegativeButton("取消", null);  
20 builder.show();  
21 return true;  
22 }  
23 return super.dispatchKeyEvent(event);  
24 }  

 

posted @ 2012-12-10 11:34  灰太狼_lilongmin  阅读(362)  评论(0编辑  收藏  举报