• 安卓学习之--如何关闭所有的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);

            }

  • 相关阅读:
    第2课 检索数据
    jmeter断言-响应断言
    jmeter参数化
    性能测试重要指标
    Web测试中,各类web控件测试点(转)
    jmeter-分布式集群测试-执行机无响应数据
    jmeter分布式集群测试-Error initialising remote server
    jmeter分布式集群测试-修改执行机默认端口
    jmeter分布式集群测试
    selenium-webdriver层级定位元素
  • 原文地址:https://www.cnblogs.com/xgjblog/p/4042880.html
Copyright © 2020-2023  润新知