zoukankan      html  css  js  c++  java
  • AndroidのActivity之退出返回栈(二)

    有时候按返回键在你的最根层并不能退出所有Activity,而是出现上几次启动的Activity。

    如何退出所有程序呢?我这里利用单例模式退出Application,建立一个Activity栈来管理

    package cn.jju.vo;
    
    import java.util.LinkedList;
    import java.util.List;
    
    import cn.jju.edu.main.MainActivity;
    
    import android.app.Activity;
    import android.app.Application;
    
    public class MyApplication extends Application {
    
        private List<Activity> listActivity = 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){
            listActivity.add(activity);
        }
        //遍历所有Activity并且finish
        public void exit(){
            for(Activity act:listActivity){
                if(!act.isFinishing()){
                    act.finish();
                }
            }
            System.exit(0);
        }
        
        public void finishActivity(){
            for(Activity act:listActivity){
                if(!act.isFinishing()){
                    act.finish();
                }
            }        
        }
    
        //获取列表的长度
        public int getLength(){
            return listActivity.size();
        }
        public Activity getActivity(int location){
            return listActivity.get(location);
        }
    }
  • 相关阅读:
    Vue ui创建vue-cli 3.0项目
    Vue中封装axios
    微信小程序自定义顶部导航
    linux离线安装docker
    解决websocket不能@Autowired注入问题
    springboot 连接 Access数据库
    Flex 布局教程:语法篇
    通过代码来了解下java策略模式,消除if-else
    docker下安装FastDFS
    centos7下安装docker
  • 原文地址:https://www.cnblogs.com/bvin/p/2857739.html
Copyright © 2011-2022 走看看