安卓中,当activity处于不可见时将立即消毁

来源:互联网 发布:java编程大赛题目 编辑:程序博客网 时间:2024/06/11 09:56

有时候我们在安卓开发下,从A 界面(Activity) 跳转到B界面(Activity),再从B界面(activity)时,希望将B界面销毁,大多的选择是在B界面startActivity时,调用finish();方法;

这样固然会让b界面的生命周期走向onDestory。其实我们可以在跳转的intent中添加一个属性,也可以达到finish的效果;

 Intent.FLAG_ACTIVITY_NO_HISTORY  :If set, the new activity is not kept in the history stack. As soon as the user navigates away from it, the activity is finished. This may also be set with the noHistoryattribute.

A界面启动跳转到B界面 的时候 设置    intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);  然后 B界面 启动 C界面  ,然后  按返回键,这个时候界面显示不是B,而是 A ,注意B  是在这个时候执行的是B界面的finish方法,同样的思想,若C界面也希望被销毁,也可以在C界面跳转到A界面的intent里添加此属性,也可以直接调用C界面的finish()方法


原创粉丝点击