Activity全局管理类

来源:互联网 发布:淘宝手机端能用gif吗 编辑:程序博客网 时间:2024/05/20 05:07
public class ActivityManager{       private static WeakReference<Activity> curAct;       private static WeakHashMap<Activity, Object> acList = new WeakHashMap<>();     /**      * 设置当前activity     *     * @param act    */   public static void setCurActivity(Activity act) {     curAct = new WeakReference<>(act);     acList.put(act, null);  } public static Activity getCurActivity() {     if (acList == null || acList.isEmpty())        return null;    WeakReference<Activity> wr = curAct;    if (wr != null) {        return wr.get();    }    return null;}public static void clearCurActivity(Activity act) {    Object remove = acList.remove(act);    if (remove != null && TextUtils        .equals(remove.getClass().getSimpleName(), curAct.get().getClass().getSimpleName())) {    }}public static void destroyAllActivity() {    if (null != acList && !acList.isEmpty()) {        Object[] keys = acList.keySet().toArray();        for (Object obj : keys) {            Activity act = (Activity)obj;            if (act != null) {                act.finish();            }        }    }}public static void closeActivity(String  activity) {    if (null != acList && !acList.isEmpty()) {        Object[] keys = acList.keySet().toArray();        for (Object obj : keys) {            if (obj != null && activity != null && TextUtils.equals(obj.getClass().getSimpleName(),activity)) {                Activity act = (Activity)obj;                act.finish();            }        }    }}

0 0
原创粉丝点击