activity管理類

記錄acticity的啓動記錄,用於退出程序時,關閉所有acticity
單純 mark 一下,下次直接用:

import android.app.Activity;
import java.util.ArrayList;
import java.util.List;
/**
 * @author CGG
 * activity管理類
 * Created by USER on 2019/1/16.
 */
public class ActivityManager {
    private static ActivityManager mInstance;
    private List<Activity> mList;
    private ActivityManager() {
    }
    public static ActivityManager getInstance() {
        if (null == mInstance) {
            synchronized (ActivityManager.class) {
                if (null == mInstance) {
                    mInstance = new ActivityManager();
                }
            }
        }
        return mInstance;
    }
    /**
     * 增加
     * @param activity
     */
    public void add(Activity activity) {
        if (null == activity) {
            return;
        }
        if (null == mList) {
         mList = new ArrayList<Activity>();
        }
        mList.add(activity);
    }
    /**
     * 刪除
     * @param activity
     */
    public void remove(Activity activity) {
        if (null == activity) {
            return;
        }
        if (null == mList) {
            return;
        }
        mList.remove(activity);
    }
    /**
     * 清除所有
     */
    public void clear() {
        if (null == mList) {
            return;
        }
        for (Activity activity : mList) {
            if (!activity.isFinishing()){
                activity.finish();
            }
        }
        mList.clear();
    }
    /**
     * 獲取長度
     * @return
     */
    public int size() {
        if (null == mList) {
            return 0;
        }
        return mList.size();
    }
    /**
     * 獲取指定位置activity
     * @param position
     * @return
     */
    public Activity get(int position) {
        if (null == mList) {
            return null;
        }
        if (position > mList.size()){
            return null;
        }
      return mList.get(position);
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章