zoukankan      html  css  js  c++  java
  • 安卓学习之--如何关闭所有的activity

    根据Activity的声明周期 
    方法1
       我们知道Android的窗口类提供了历史栈,我们可以通过stack的原理来巧妙的实现,这里我们在A窗口打开B窗口时在Intent中直接加入标志 Intent.FLAG_ACTIVITY_CLEAR_TOP,这样开启B时将会清除该进程空间的所有Activity。 

    在A窗口中使用下面的代码调用B窗口 
    Java代码 

    Intent intent = new Intent(); 
    intent.setClass(Android123.this, CWJ.class); 
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  //注意本行的FLAG设置 
    startActivity(intent) 

    方法2: 

    在调用退出方法中写上

    MyApplication.getInstance().exit();

    public class MyApplication extends Application {

            private List<Activity> activityList = new LinkedList<Activity>();
            private static MyApplication instance;

            private MyApplication() {
            }

            // 单例模式中获取唯一的MyApplication实例
            public static MyApplication getInstance() {
                    if (null == instance) {
                            instance = new MyApplication();
                    }
                    return instance;

            }

            // 添加Activity到容器中
            public void addActivity(Activity activity) {
                    activityList.add(activity);
            }

            // 遍历所有Activity并finish
            /*
             * 在每一个Activity中的onCreate方法里添加该Activity到MyApplication对象实例容器中
             * 
             * MyApplication.getInstance().addActivity(this);
             * 
             * 在需要结束所有Activity的时候调用exit方法
             * 
             * MyApplication.getInstance().exit();
             */
            public void exit() {

                    for (Activity activity : activityList) {
                            activity.finish();
                    }

                    System.exit(0);

            }

  • 相关阅读:
    windows 按时自动化任务
    Linux libusb 安装及简单使用
    Linux 交换eth0和eth1
    I.MX6 GPS JNI HAL register init hacking
    I.MX6 Android mmm convenient to use
    I.MX6 GPS Android HAL Framework 调试
    Android GPS GPSBasics project hacking
    Python windows serial
    【JAVA】别特注意,POI中getLastRowNum() 和getLastCellNum()的区别
    freemarker跳出循环
  • 原文地址:https://www.cnblogs.com/xgjblog/p/4042880.html
Copyright © 2011-2022 走看看