自定義Activity管理類

public class ActivityController {
      public static ArrayList<Activity> list=new ArrayList<Activity>();
      //添加棧中新增的activity
      public static void addActivty(Activity activity){
             if(!list.contains(activity)){
                  list.add(activity);
             }
      }
      //移除銷燬了activity
      public static void removeActivity(Activity activity){
              list.remove(activity);
      }
      //銷燬棧中的activity
      public static void finishAllActivity(){
            for(Activity currentActivity: list){
               if(!currentActivity.isFinishing()){
                currentActivity.finish();
               }
            }
      }
}
//這種作法缺點:當activity異常關閉,會activity關閉不了(該對象的堆內存地址被list中存儲着,強引用),形成內存溢出
相關文章
相關標籤/搜索