android在学习——程序的退出
2012-02-27 11:31
225 查看
我们做的android程序一般不会只有一个界面的,不同的界面往往就会有好多的activity,如何退出android程序呢?退出当前的activity吗?它又会产生其他的界面,没有达到真正的退出。要退出就要退出所有的activity否则就要先清除所有的activity记录,再退出当前activity。
我选择了后者,因为如果要退出所有的activity必定比较麻烦,需要循环等等。经过网上的资料,后者则需要一句intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 就能清除activity的记录,然后跳转到另一个界面在onresum的时候判断一下,就能关闭了。
好了废话不多说了,看代码。
下面看看loginActivity中的相应代码:
我选择了后者,因为如果要退出所有的activity必定比较麻烦,需要循环等等。经过网上的资料,后者则需要一句intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 就能清除activity的记录,然后跳转到另一个界面在onresum的时候判断一下,就能关闭了。
好了废话不多说了,看代码。
//提示是否退出 public void isExit(){ AlertDialog.Builder alertbBuilder = new AlertDialog.Builder(this); alertbBuilder.setIcon(R.drawable.infoicon).setTitle("提示...").setMessage("你确定要离开客户端吗?"); alertbBuilder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent intent = new Intent(); intent.putExtra("exit", "exit");//添加参数,这是退出的依据 intent.setClass(MenuActivity.this, loginActivity.class);//跳转到login界面,根据参数退出 intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //注意本行的FLAG设置,clear所有Activity记录 startActivity(intent); } }); alertbBuilder.setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }).create(); alertbBuilder.show(); }
下面看看loginActivity中的相应代码:
@Override protected void onResume() { super.onResume(); Intent intent = getIntent(); Bundle bundle = intent.getExtras(); if(bundle.getString("login")!=null&&!bundle.getString("login").equals("login")){//已经登陆过了 Intent intent2= new Intent(); intent2.setClass(loginActivity.this, MainActivity.class); startActivity(intent2); }else if(bundle.getString("exit")!=null&&bundle.getString("exit").equals("exit")){//需要退出 int nPid = android.os.Process.myPid();//获取当前的id android.os.Process.killProcess(nPid);//结束activity }else{ } }
相关文章推荐
- Android开发学习笔记,修改Activity名称后,导致程序打开该Activity时异常退出
- Android学习心得② - fragment中设置双击返回键退出程序
- Android学习——退出程序
- Android学习札记41:你真的有必要退出吗?——再说Android程序的退出功能
- Android工作学习第5天之Activity的完全退出程序
- Android退出程序
- Android连续点击两次退出程序
- Android开发中完全退出程序的三种方法
- android 学习笔记(1) android程序初识
- android捕获程序异常退出
- android多activity下如何退出整个程序
- android开发按两次返回键退出整个程序
- Android程序完全退出的三种方法
- Android开发中完全退出程序的三种方法
- Android 实现按两次返回键退出程序
- Android多媒体学习九:利用MediaRecorder类实现自己的音频录制程序
- 关于Android退出程序清空私密文件的那些事
- Android 实现按两次返回键退出程序
- 学习Android之第七个小程序头像选择(自定义对话框、Gallery、ImageSwitcher)
- Android完全退出多个activity程序