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);
        }
    }
  • 相关阅读:
    keyCode 与charCode
    阻止事件冒泡的三种手段
    jquery实现二级菜单
    static public和 public static 区别
    java单例模式
    使用jqueryui
    正则表达式
    PHP中mysql_affected_rows()和mysql_num_rows()区别
    PHP中冒号、endif、endwhile、endfor这些都是什么
    jqueryMobile
  • 原文地址:https://www.cnblogs.com/bvin/p/2857739.html
Copyright © 2011-2022 走看看