多个activity的启动与退出

做项目时,忘记写了一个全局的activity  栈管理,到了后期发现是很痛苦的.

项目中有一个逻辑, 个人中心Activity--A   跳转到 待支付订单列表B -- 点击进入待支付详情C -- 完成支付后 跳转到 已支付列表D .


这一系列完成后要从D 直接返回到A , 但是我发现 顺序是 D-->C --> B-->A .瞬间就感觉不爽.


解决方法是:

intent.setClass(C.this, D.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  //注意本行的FLAG设置,是关闭之前的activity
startActivity(intent);
finish();//关闭C

然后D中,需要重写

@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
     if ((Intent.FLAG_ACTIVITY_CLEAR_TOP & intent.getFlags()) != 0) {
<span style="white-space:pre">	</span>finish();
     }
}

不需要在配置文件设置D启动模式为 单例. 因为它不是程序入口

参考:http://blog.sina.com.cn/s/blog_674fdbb501011wus.html

猜你喜欢

转载自blog.csdn.net/chengqianzhang/article/details/52240547
今日推荐