一般退出程序是:System.exit(0); 但是如果在当前页面前面还有页面的话,直接使用这种方式就会报错。
一般我们使用循环遍历退出:我们需要一个集合来装这些activty,然后在退出时,先把这些activity全部finish,然后在退出就可以避免发生错误:
1.在自己写的Application中做一个单例和一个集合
public static MyApp instance;
public static MyApp getInstance() {
return instance;
}
@Override
public void onCreate() {
super.onCreate();
instance = this;
}
private List<Activity> activityList = new LinkedList();
//退出程序
//添加Activity到容器中
public void addActivity(Activity activity) {
activityList.add(activity);
}
//遍历所有Activity并finish
public void exit() {
for (Activity activity : activityList) {
activity.finish();
}
System.exit(0);
//如果是退出 然后跳到登录页面就不需要System.exit(0);这个方法
}
2.在每个activity创建的时候把这个activity添加进集合
MyApp.getInstance().addActivity(this);
3.退出的时候直接调用exit()方法
MyApp.getInstance().exit();