您的位置:首页 > 移动开发

如何退出Activity?如何安全退出已调用多个Activity的Application?

2017-02-05 20:10 441 查看
public class AcitivityCollector{

public static List<Activity> activities =new ArrauList<>();

public static void addActivity(Activity activity){
activities .add(activity);
}

public static void removeActivity(Activity activity){
activities .remove(activity);
}
//退出所有的Activity
public static void finishAll(){
for(Activity activity:activities){

if(!activity.isFinishing()){
activity.finish();

}

}
}

}

让所有的类继承BaseActivity即可 

public class BaseActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏
ActivityCollector.addActivity(this);
}

@Override
protected void onDestroy() {
super.onDestroy();
ActivityCollector.removeActivity(this);
}
}

方案2 就是发送特定广播

 在需要结束应用时 发送一个特定的广播。每个Activity收到广播后,关闭即可,递归关闭

方案3 打开页面的时候使用startActivity,然后自己加标识  根据标识在onActivity中finish() 递归关闭
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: