ActivityGroup或TabActivity中捕获keyBack事件

来源:互联网 发布:“免费淘宝模版代码” 编辑:程序博客网 时间:2024/05/22 06:21

在ActivityGroup或TabActivity中捕获keyBack需要覆写dispatchKeyEvent方法

/** * 在ActivityGroup中捕获keyBack */@Overridepublic boolean dispatchKeyEvent(KeyEvent event) {if(event.getKeyCode()==KeyEvent.KEYCODE_BACK&&event.getAction()==KeyEvent.ACTION_DOWN){alert();return true;}return super.dispatchKeyEvent(event);}


private void alert() {Builder builder=new AlertDialog.Builder(MainActivity.this);builder.setIcon(getResources().getDrawable(android.R.drawable.ic_dialog_info));builder.setTitle("你确定要退出吗?");builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {finish();}});builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {}});builder.create().show();}

同样为了使软键盘和底部的tab选项卡完美工作需要在AndroidManifest.xml文件中为TabActivity或ActivityGroup做如下设置


<activity android:name=".MainTabActivity"             android:configChanges="orientation|keyboardHidden"            android:windowSoftInputMode="adjustPan"            />

 

原创粉丝点击